@openhps/core
Version:
Open Hybrid Positioning System - Core component
41 lines (37 loc) • 1.33 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.refractView = exports.refractVector = exports.reflectView = exports.reflectVector = void 0;
var _Camera = require("./Camera.js");
var _Normal = require("./Normal.js");
var _Position = require("./Position.js");
var _MaterialProperties = require("./MaterialProperties.js");
/**
* The reflect vector in view space.
*
* @tsl
* @type {Node<vec3>}
*/
const reflectView = exports.reflectView = /*@__PURE__*/_Position.positionViewDirection.negate().reflect(_Normal.transformedNormalView);
/**
* The refract vector in view space.
*
* @tsl
* @type {Node<vec3>}
*/
const refractView = exports.refractView = /*@__PURE__*/_Position.positionViewDirection.negate().refract(_Normal.transformedNormalView, _MaterialProperties.materialRefractionRatio);
/**
* Used for sampling cube maps when using cube reflection mapping.
*
* @tsl
* @type {Node<vec3>}
*/
const reflectVector = exports.reflectVector = /*@__PURE__*/reflectView.transformDirection(_Camera.cameraViewMatrix).toVar('reflectVector');
/**
* Used for sampling cube maps when using cube refraction mapping.
*
* @tsl
* @type {Node<vec3>}
*/
const refractVector = exports.refractVector = /*@__PURE__*/refractView.transformDirection(_Camera.cameraViewMatrix).toVar('reflectVector');