Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Ablesons
three.js
提交
46cb30b1
T
three.js
项目概览
Ablesons
/
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,发现更多精彩内容 >>
提交
46cb30b1
编写于
2月 22, 2017
作者:
M
Mr.doob
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
WebGLRenderer: Moved setMaterial to WebGLState.
上级
4d0c82ae
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
25 addition
and
24 deletion
+25
-24
src/renderers/WebGLRenderer.js
src/renderers/WebGLRenderer.js
+3
-23
src/renderers/webgl/WebGLState.js
src/renderers/webgl/WebGLState.js
+22
-1
未找到文件。
src/renderers/WebGLRenderer.js
浏览文件 @
46cb30b1
import
{
REVISION
,
MaxEquation
,
MinEquation
,
RGB_ETC1_Format
,
RGBA_PVRTC_2BPPV1_Format
,
RGBA_PVRTC_4BPPV1_Format
,
RGB_PVRTC_2BPPV1_Format
,
RGB_PVRTC_4BPPV1_Format
,
RGBA_S3TC_DXT5_Format
,
RGBA_S3TC_DXT3_Format
,
RGBA_S3TC_DXT1_Format
,
RGB_S3TC_DXT1_Format
,
SrcAlphaSaturateFactor
,
OneMinusDstColorFactor
,
DstColorFactor
,
OneMinusDstAlphaFactor
,
DstAlphaFactor
,
OneMinusSrcAlphaFactor
,
SrcAlphaFactor
,
OneMinusSrcColorFactor
,
SrcColorFactor
,
OneFactor
,
ZeroFactor
,
ReverseSubtractEquation
,
SubtractEquation
,
AddEquation
,
DepthFormat
,
DepthStencilFormat
,
LuminanceAlphaFormat
,
LuminanceFormat
,
RGBAFormat
,
RGBFormat
,
AlphaFormat
,
HalfFloatType
,
FloatType
,
UnsignedIntType
,
IntType
,
UnsignedShortType
,
ShortType
,
ByteType
,
UnsignedInt248Type
,
UnsignedShort565Type
,
UnsignedShort5551Type
,
UnsignedShort4444Type
,
UnsignedByteType
,
LinearMipMapLinearFilter
,
LinearMipMapNearestFilter
,
LinearFilter
,
NearestMipMapLinearFilter
,
NearestMipMapNearestFilter
,
NearestFilter
,
MirroredRepeatWrapping
,
ClampToEdgeWrapping
,
RepeatWrapping
,
FrontFaceDirectionCW
,
NoBlending
,
BackSide
,
DoubleSide
,
TriangleFanDrawMode
,
TriangleStripDrawMode
,
TrianglesDrawMode
,
NoColors
,
FlatShading
,
LinearToneMapping
}
from
'
../constants
'
;
import
{
REVISION
,
MaxEquation
,
MinEquation
,
RGB_ETC1_Format
,
RGBA_PVRTC_2BPPV1_Format
,
RGBA_PVRTC_4BPPV1_Format
,
RGB_PVRTC_2BPPV1_Format
,
RGB_PVRTC_4BPPV1_Format
,
RGBA_S3TC_DXT5_Format
,
RGBA_S3TC_DXT3_Format
,
RGBA_S3TC_DXT1_Format
,
RGB_S3TC_DXT1_Format
,
SrcAlphaSaturateFactor
,
OneMinusDstColorFactor
,
DstColorFactor
,
OneMinusDstAlphaFactor
,
DstAlphaFactor
,
OneMinusSrcAlphaFactor
,
SrcAlphaFactor
,
OneMinusSrcColorFactor
,
SrcColorFactor
,
OneFactor
,
ZeroFactor
,
ReverseSubtractEquation
,
SubtractEquation
,
AddEquation
,
DepthFormat
,
DepthStencilFormat
,
LuminanceAlphaFormat
,
LuminanceFormat
,
RGBAFormat
,
RGBFormat
,
AlphaFormat
,
HalfFloatType
,
FloatType
,
UnsignedIntType
,
IntType
,
UnsignedShortType
,
ShortType
,
ByteType
,
UnsignedInt248Type
,
UnsignedShort565Type
,
UnsignedShort5551Type
,
UnsignedShort4444Type
,
UnsignedByteType
,
LinearMipMapLinearFilter
,
LinearMipMapNearestFilter
,
LinearFilter
,
NearestMipMapLinearFilter
,
NearestMipMapNearestFilter
,
NearestFilter
,
MirroredRepeatWrapping
,
ClampToEdgeWrapping
,
RepeatWrapping
,
FrontFaceDirectionCW
,
NoBlending
,
BackSide
,
TriangleFanDrawMode
,
TriangleStripDrawMode
,
TrianglesDrawMode
,
NoColors
,
FlatShading
,
LinearToneMapping
}
from
'
../constants
'
;
import
{
Matrix4
}
from
'
../math/Matrix4
'
;
import
{
WebGLUniforms
}
from
'
./webgl/WebGLUniforms
'
;
import
{
UniformsUtils
}
from
'
./shaders/UniformsUtils
'
;
...
...
@@ -692,7 +692,7 @@ function WebGLRenderer( parameters ) {
this
.
renderBufferDirect
=
function
(
camera
,
fog
,
geometry
,
material
,
object
,
group
)
{
setMaterial
(
material
);
s
tate
.
s
etMaterial
(
material
);
program
=
setProgram
(
camera
,
fog
,
material
,
object
);
geometryProgram
=
geometry
.
id
+
'
_
'
+
program
.
id
+
'
_
'
+
material
.
wireframe
;
...
...
@@ -1502,7 +1502,7 @@ function WebGLRenderer( parameters ) {
if
(
object
.
isImmediateRenderObject
)
{
setMaterial
(
material
);
s
tate
.
s
etMaterial
(
material
);
var
program
=
setProgram
(
camera
,
scene
.
fog
,
material
,
object
);
...
...
@@ -1671,26 +1671,6 @@ function WebGLRenderer( parameters ) {
}
function
setMaterial
(
material
)
{
material
.
side
===
DoubleSide
?
state
.
disable
(
_gl
.
CULL_FACE
)
:
state
.
enable
(
_gl
.
CULL_FACE
);
state
.
setFlipSided
(
material
.
side
===
BackSide
);
material
.
transparent
===
true
?
state
.
setBlending
(
material
.
blending
,
material
.
blendEquation
,
material
.
blendSrc
,
material
.
blendDst
,
material
.
blendEquationAlpha
,
material
.
blendSrcAlpha
,
material
.
blendDstAlpha
,
material
.
premultipliedAlpha
)
:
state
.
setBlending
(
NoBlending
);
state
.
setDepthFunc
(
material
.
depthFunc
);
state
.
setDepthTest
(
material
.
depthTest
);
state
.
setDepthWrite
(
material
.
depthWrite
);
state
.
setColorWrite
(
material
.
colorWrite
);
state
.
setPolygonOffset
(
material
.
polygonOffset
,
material
.
polygonOffsetFactor
,
material
.
polygonOffsetUnits
);
}
function
setProgram
(
camera
,
fog
,
material
,
object
)
{
_usedTextureUnits
=
0
;
...
...
src/renderers/webgl/WebGLState.js
浏览文件 @
46cb30b1
...
...
@@ -2,7 +2,7 @@
* @author mrdoob / http://mrdoob.com/
*/
import
{
NotEqualDepth
,
GreaterDepth
,
GreaterEqualDepth
,
EqualDepth
,
LessEqualDepth
,
LessDepth
,
AlwaysDepth
,
NeverDepth
,
CullFaceFront
,
CullFaceBack
,
CullFaceNone
,
CustomBlending
,
MultiplyBlending
,
SubtractiveBlending
,
AdditiveBlending
,
NoBlending
,
NormalBlending
}
from
'
../../constants
'
;
import
{
NotEqualDepth
,
GreaterDepth
,
GreaterEqualDepth
,
EqualDepth
,
LessEqualDepth
,
LessDepth
,
AlwaysDepth
,
NeverDepth
,
CullFaceFront
,
CullFaceBack
,
CullFaceNone
,
CustomBlending
,
MultiplyBlending
,
SubtractiveBlending
,
AdditiveBlending
,
NoBlending
,
NormalBlending
,
DoubleSide
,
BackSide
}
from
'
../../constants
'
;
import
{
Vector4
}
from
'
../../math/Vector4
'
;
function
WebGLState
(
gl
,
extensions
,
paramThreeToGL
)
{
...
...
@@ -625,6 +625,26 @@ function WebGLState( gl, extensions, paramThreeToGL ) {
}
function
setMaterial
(
material
)
{
material
.
side
===
DoubleSide
?
disable
(
gl
.
CULL_FACE
)
:
enable
(
gl
.
CULL_FACE
);
setFlipSided
(
material
.
side
===
BackSide
);
material
.
transparent
===
true
?
setBlending
(
material
.
blending
,
material
.
blendEquation
,
material
.
blendSrc
,
material
.
blendDst
,
material
.
blendEquationAlpha
,
material
.
blendSrcAlpha
,
material
.
blendDstAlpha
,
material
.
premultipliedAlpha
)
:
setBlending
(
NoBlending
);
setDepthFunc
(
material
.
depthFunc
);
setDepthTest
(
material
.
depthTest
);
setDepthWrite
(
material
.
depthWrite
);
setColorWrite
(
material
.
colorWrite
);
setPolygonOffset
(
material
.
polygonOffset
,
material
.
polygonOffsetFactor
,
material
.
polygonOffsetUnits
);
}
// TODO Deprecate
function
setColorWrite
(
colorWrite
)
{
...
...
@@ -934,6 +954,7 @@ function WebGLState( gl, extensions, paramThreeToGL ) {
getCompressedTextureFormats
:
getCompressedTextureFormats
,
setBlending
:
setBlending
,
setMaterial
:
setMaterial
,
setColorWrite
:
setColorWrite
,
setDepthTest
:
setDepthTest
,
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录