in (照明工程学会)是一种文件格式(.ies),可增强动画工具中的灯光。它增加了精确的衰减,色散,色温,空间发射,亮度等等。这是一个工业标准,用于显示照明产品的真实外观。许多动画工具(Maya、Cinema4D、搅拌器等)都能够利用这种格式。
然而,我仍然在寻找一种在WebGL框架中导入/使用in的方法。使用动画工具(在我的例子中是Blender)来导入和处理.ies文件,并最终将项目导出为webgl格式,对我来说似乎是最有前途的方法。我尝试了几个WebGL框架(three.js,x3dom,coppercube)和更多的导出格式/导入/转换器脚本,但都没有产生令人满意的结果。处理结果显示没
我和Three.js混在一起已经有一段时间了,我似乎不能让任何类型的灯工作。场景使用0xFFFFFF环境光正常渲染,但添加灯光没有任何效果。我已经直接从示例中复制了代码,并且灯光列在场景的子级中,只是没有出现。
var camera;
var scene;
var renderer;
$(document).ready(function() {
camera = new THREE.PerspectiveCamera(75, window.innerWidth / window.innerHeight,
使用SetTimeOut延迟后,我成功地在场景中生成了一个灯光。这是非常有效的。但在我的例子中,我想将动画属性添加到此灯光。我该怎么做呢?如果我为一个不存在的元素编写动画属性,three.js在启动时就会崩溃。如果我写了一个SetTimeOut属性(就像我在场景中对我的灯光所做的那样),我在浏览器控制台上会得到这个错误:"light2 is not defined“。 下面是一个示例: var scene = new THREE.Scene();
var renderer = new THREE.WebGLRenderer();
renderer.setSize( window
我正在使用Three.js r58 (使用WebGLRenderer)创建一个系统,显示一个建筑物的3D模型,其中包含灯光的实际位置和暗淡程度。
数据库中的每个灯光都由一个CubeGeometry对象(物理灯光)和一个SpotLight (用于显示灯光输出的外观)表示,如下所示:
// 'this' is an existing custom object as populated from the database - all code there is fine
var geometry = new THREE.CubeGeometry(4.8, 0.6, 1.36);
v
这是一个关于javascript和three.js编码风格惯例的问题。我更喜欢使用最新的ES-任何约定。
我在想,如果不是照常做的话:
var scene = new THREE.Scene();
var cube = new THREE.Mesh(new THREE.BoxGeometry(1,1,1), new THREE.MeshBasicMaterial(0xffffff))
scene.add(cube)
可以将网格对象(以及其他对象,可能还有灯光,甚至照相机)存储为场景对象的属性:
const scene = new THREE.Scene(); // or var, but th