Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
车家大少爷
three.js
提交
b45112a8
T
three.js
项目概览
车家大少爷
/
three.js
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
three.js
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
b45112a8
编写于
10月 28, 2015
作者:
M
Mr.doob
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Updated builds.
上级
6039072d
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
181 addition
and
213 deletion
+181
-213
build/three.js
build/three.js
+26
-58
build/three.min.js
build/three.min.js
+155
-155
未找到文件。
build/three.js
浏览文件 @
b45112a8
...
...
@@ -24595,7 +24595,10 @@ THREE.WebGLRenderer = function ( parameters ) {
directional: [],
point: [],
spot: [],
hemi: []
hemi: [],
shadows: 0,
shadowsPointLight: 0
},
...
...
@@ -25861,7 +25864,7 @@ THREE.WebGLRenderer = function ( parameters ) {
var materialProperties = properties.get( material );
var parameters = programCache.getParameters( material, lights, fog, object );
var parameters = programCache.getParameters( material,
_
lights, fog, object );
var code = programCache.getProgramCode( material, parameters );
var program = materialProperties.program;
...
...
@@ -27068,6 +27071,9 @@ THREE.WebGLRenderer = function ( parameters ) {
spotLength = 0,
hemiLength = 0;
_lights.shadows = 0;
_lights.shadowsPointLight = 0;
for ( l = 0, ll = lights.length; l < ll; l ++ ) {
light = lights[ l ];
...
...
@@ -27101,6 +27107,7 @@ THREE.WebGLRenderer = function ( parameters ) {
_lights.directional[ directionalLength ++ ] = uniforms;
if ( light.castShadow ) _lights.shadows ++;
} else if ( light instanceof THREE.PointLight ) {
...
...
@@ -27124,6 +27131,13 @@ THREE.WebGLRenderer = function ( parameters ) {
_lights.point[ pointLength ++ ] = uniforms;
if ( light.castShadow ) {
_lights.shadows ++;
_lights.shadowsPointLight ++;
}
} else if ( light instanceof THREE.SpotLight ) {
if( ! light.__webglUniforms ) {
...
...
@@ -27156,6 +27170,8 @@ THREE.WebGLRenderer = function ( parameters ) {
_lights.spot[ spotLength ++ ] = uniforms;
if ( light.castShadow ) _lights.shadows ++;
} else if ( light instanceof THREE.HemisphereLight ) {
if( ! light.__webglUniforms ) {
...
...
@@ -29361,61 +29377,12 @@ THREE.WebGLPrograms = function ( renderer, capabilities ) {
}
function allocateLights( lights ) {
var dirLights = 0;
var pointLights = 0;
var spotLights = 0;
var hemiLights = 0;
for ( var l = 0, ll = lights.length; l < ll; l ++ ) {
var light = lights[ l ];
if ( light instanceof THREE.DirectionalLight ) dirLights ++;
if ( light instanceof THREE.PointLight ) pointLights ++;
if ( light instanceof THREE.SpotLight ) spotLights ++;
if ( light instanceof THREE.HemisphereLight ) hemiLights ++;
}
return { 'directional': dirLights, 'point': pointLights, 'spot': spotLights, 'hemi': hemiLights };
}
function allocateShadows( lights ) {
var maxShadows = 0;
var pointLightShadows = 0;
for ( var l = 0, ll = lights.length; l < ll; l ++ ) {
var light = lights[ l ];
if ( light.castShadow === false ) continue;
if ( light instanceof THREE.SpotLight || light instanceof THREE.DirectionalLight ) maxShadows ++;
if ( light instanceof THREE.PointLight ) {
maxShadows ++;
pointLightShadows ++;
}
}
return { 'maxShadows': maxShadows, 'pointLightShadows': pointLightShadows };
}
this.getParameters = function ( material, lights, fog, object ) {
var shaderID = shaderIDs[ material.type ];
// heuristics to create shader parameters according to lights in the scene
// (not to blow over maxLights budget)
var maxLightCount = allocateLights( lights );
var allocatedShadows = allocateShadows( lights );
var maxBones = allocateBones( object );
var precision = renderer.getPrecision();
...
...
@@ -29475,14 +29442,15 @@ THREE.WebGLPrograms = function ( renderer, capabilities ) {
maxMorphTargets: renderer.maxMorphTargets,
maxMorphNormals: renderer.maxMorphNormals,
maxDirLights: maxLightCount.directional,
maxPointLights: maxLightCount.point,
maxSpotLights: maxLightCount.spot,
maxHemiLights: maxLightCount.hemi,
maxDirLights: lights.directional.length,
maxPointLights: lights.point.length,
maxSpotLights: lights.spot.length,
maxHemiLights: lights.hemi.length,
maxShadows: lights.shadows,
pointLightShadows: lights.shadowsPointLight,
maxShadows: allocatedShadows.maxShadows,
pointLightShadows: allocatedShadows.pointLightShadows,
shadowMapEnabled: renderer.shadowMap.enabled && object.receiveShadow && allocatedShadows.maxShadows > 0,
shadowMapEnabled: renderer.shadowMap.enabled && object.receiveShadow && lights.shadows > 0,
shadowMapType: renderer.shadowMap.type,
shadowMapDebug: renderer.shadowMap.debug,
...
...
build/three.min.js
浏览文件 @
b45112a8
因为 它太大了无法显示 source diff 。你可以改为
查看blob
。
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录