MLRClipTrick.hpp 672 B

1234567891011121314151617181920212223242526
  1. //===========================================================================//
  2. // Copyright (C) Microsoft Corporation. All rights reserved. //
  3. //===========================================================================//
  4. #pragma once
  5. #define MLR_MLRCLIPTRICK_HPP
  6. #if !defined(STUFF_VECTOR4D_HPP)
  7. #include <Stuff\Vector4D.hpp>
  8. #endif
  9. // defined in MLRPrimitiveBase.cpp
  10. extern int clipTrick[6][2];
  11. inline void
  12. DoClipTrick(Vector4D& v, int ct)
  13. {
  14. v[clipTrick[ct][0]] = clipTrick[ct][1] ? v.w-SMALL : SMALL;
  15. }
  16. inline void
  17. DoCleanClipTrick(Vector4D& v, int ct)
  18. {
  19. v[clipTrick[ct][0]] = clipTrick[ct][1] ? v.w : 0.0f;
  20. }