Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
车家大少爷
three.js
提交
fd500a63
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,发现更多精彩内容 >>
提交
fd500a63
编写于
12月 22, 2014
作者:
B
Ben Houston
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
ensure that lightMap is modulated by surface color and then added to resulting fragColor.
上级
209c8e1c
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
27 addition
and
12 deletion
+27
-12
src/renderers/shaders/ShaderChunk/lightmap_fragment.glsl
src/renderers/shaders/ShaderChunk/lightmap_fragment.glsl
+9
-1
src/renderers/shaders/ShaderChunk/lights_phong_fragment.glsl
src/renderers/shaders/ShaderChunk/lights_phong_fragment.glsl
+10
-10
src/renderers/shaders/ShaderChunk/map_fragment.glsl
src/renderers/shaders/ShaderChunk/map_fragment.glsl
+6
-0
src/renderers/shaders/ShaderLib.js
src/renderers/shaders/ShaderLib.js
+2
-1
未找到文件。
src/renderers/shaders/ShaderChunk/lightmap_fragment.glsl
浏览文件 @
fd500a63
#ifdef USE_LIGHTMAP
gl_FragColor
=
gl_FragColor
*
texture2D
(
lightMap
,
vUv2
);
#if defined( PHONG )
gl_FragColor
+=
diffuseColor
*
texture2D
(
lightMap
,
vUv2
);
#else
gl_FragColor
=
gl_FragColor
*
texture2D
(
lightMap
,
vUv2
);
#endif
#endif
\ No newline at end of file
src/renderers/shaders/ShaderChunk/lights_phong_fragment.glsl
浏览文件 @
fd500a63
...
...
@@ -33,7 +33,7 @@ vec3 viewPosition = normalize( vViewPosition );
lVector
=
normalize
(
lVector
);
// diffuse
// diffuse
float
dotProduct
=
dot
(
normal
,
lVector
);
...
...
@@ -50,7 +50,7 @@ vec3 viewPosition = normalize( vViewPosition );
#endif
pointDiffuse
+=
diffuse
*
pointLightColor
[
i
]
*
pointDiffuseWeight
*
lDistance
;
pointDiffuse
+=
pointLightColor
[
i
]
*
pointDiffuseWeight
*
lDistance
;
// specular
...
...
@@ -89,7 +89,7 @@ vec3 viewPosition = normalize( vViewPosition );
spotEffect
=
max
(
pow
(
max
(
spotEffect
,
0
.
0
),
spotLightExponent
[
i
]
),
0
.
0
);
// diffuse
// diffuse
float
dotProduct
=
dot
(
normal
,
lVector
);
...
...
@@ -106,9 +106,9 @@ vec3 viewPosition = normalize( vViewPosition );
#endif
spotDiffuse
+=
diffuse
*
spotLightColor
[
i
]
*
spotDiffuseWeight
*
lDistance
*
spotEffect
;
spotDiffuse
+=
spotLightColor
[
i
]
*
spotDiffuseWeight
*
lDistance
*
spotEffect
;
// specular
// specular
vec3
spotHalfVector
=
normalize
(
lVector
+
viewPosition
);
float
spotDotNormalHalf
=
max
(
dot
(
normal
,
spotHalfVector
),
0
.
0
);
...
...
@@ -135,7 +135,7 @@ vec3 viewPosition = normalize( vViewPosition );
vec4
lDirection
=
viewMatrix
*
vec4
(
directionalLightDirection
[
i
],
0
.
0
);
vec3
dirVector
=
normalize
(
lDirection
.
xyz
);
// diffuse
// diffuse
float
dotProduct
=
dot
(
normal
,
dirVector
);
...
...
@@ -152,7 +152,7 @@ vec3 viewPosition = normalize( vViewPosition );
#endif
dirDiffuse
+=
di
ffuse
*
di
rectionalLightColor
[
i
]
*
dirDiffuseWeight
;
dirDiffuse
+=
directionalLightColor
[
i
]
*
dirDiffuseWeight
;
// specular
...
...
@@ -208,7 +208,7 @@ vec3 viewPosition = normalize( vViewPosition );
vec3
hemiColor
=
mix
(
hemisphereLightGroundColor
[
i
],
hemisphereLightSkyColor
[
i
],
hemiDiffuseWeight
);
hemiDiffuse
+=
diffuse
*
hemiColor
;
hemiDiffuse
+=
hemiColor
;
// specular (sky light)
...
...
@@ -269,10 +269,10 @@ vec3 totalSpecular = vec3( 0.0 );
#ifdef METAL
gl_FragColor
.
xyz
=
gl_FragColor
.
xyz
*
(
emissive
+
totalDiffuse
+
ambientLightColor
*
ambient
+
totalSpecular
);
gl_FragColor
.
xyz
=
diffuseColor
*
(
emissive
+
totalDiffuse
+
ambientLightColor
*
ambient
+
totalSpecular
);
#else
gl_FragColor
.
xyz
=
gl_FragColor
.
xyz
*
(
emissive
+
totalDiffuse
+
ambientLightColor
*
ambient
)
+
totalSpecular
;
gl_FragColor
.
xyz
=
diffuseColor
*
(
emissive
+
totalDiffuse
+
ambientLightColor
*
ambient
)
+
totalSpecular
;
#endif
\ No newline at end of file
src/renderers/shaders/ShaderChunk/map_fragment.glsl
浏览文件 @
fd500a63
...
...
@@ -9,5 +9,11 @@
#endif
gl_FragColor
=
gl_FragColor
*
texelColor
;
#if defined( PHONG )
diffuseColor
*=
texelColor
.
xyz
;
#endif
#endif
\ No newline at end of file
src/renderers/shaders/ShaderLib.js
浏览文件 @
fd500a63
...
...
@@ -186,7 +186,7 @@ THREE.ShaderLib = {
"
void main() {
"
,
"
gl_FragColor = vec4( vec3( 1.0 ), opacity );
"
,
THREE
.
ShaderChunk
[
"
logdepthbuf_fragment
"
],
THREE
.
ShaderChunk
[
"
map_fragment
"
],
THREE
.
ShaderChunk
[
"
alphamap_fragment
"
],
...
...
@@ -319,6 +319,7 @@ THREE.ShaderLib = {
"
void main() {
"
,
"
gl_FragColor = vec4( vec3( 1.0 ), opacity );
"
,
"
vec3 diffuseColor = diffuse;
"
,
THREE
.
ShaderChunk
[
"
logdepthbuf_fragment
"
],
THREE
.
ShaderChunk
[
"
map_fragment
"
],
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录