Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Ablesons
three.js
提交
ef9ece36
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,发现更多精彩内容 >>
提交
ef9ece36
编写于
1月 17, 2019
作者:
M
Mugen87
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
WebGLTextures: Refactoring
上级
87444c0b
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
13 addition
and
43 deletion
+13
-43
src/renderers/webgl/WebGLTextures.js
src/renderers/webgl/WebGLTextures.js
+13
-43
未找到文件。
src/renderers/webgl/WebGLTextures.js
浏览文件 @
ef9ece36
...
...
@@ -198,23 +198,10 @@ function WebGLTextures( _gl, extensions, state, properties, capabilities, utils,
var
textureProperties
=
properties
.
get
(
texture
);
if
(
texture
.
image
&&
textureProperties
.
__image__webglTextureCube
)
{
if
(
texture
Properties
.
__webglInit
===
undefined
)
return
;
// cube texture
_gl
.
deleteTexture
(
textureProperties
.
__webglTexture
);
_gl
.
deleteTexture
(
textureProperties
.
__image__webglTextureCube
);
}
else
{
// 2D texture
if
(
textureProperties
.
__webglInit
===
undefined
)
return
;
_gl
.
deleteTexture
(
textureProperties
.
__webglTexture
);
}
// remove all webgl properties
properties
.
remove
(
texture
);
}
...
...
@@ -311,7 +298,6 @@ function WebGLTextures( _gl, extensions, state, properties, capabilities, utils,
}
function
setTextureCube
(
texture
,
slot
)
{
var
textureProperties
=
properties
.
get
(
texture
);
...
...
@@ -320,18 +306,10 @@ function WebGLTextures( _gl, extensions, state, properties, capabilities, utils,
if
(
texture
.
version
>
0
&&
textureProperties
.
__version
!==
texture
.
version
)
{
if
(
!
textureProperties
.
__image__webglTextureCube
)
{
texture
.
addEventListener
(
'
dispose
'
,
onTextureDispose
);
textureProperties
.
__image__webglTextureCube
=
_gl
.
createTexture
();
info
.
memory
.
textures
++
;
}
initTexture
(
textureProperties
,
texture
);
state
.
activeTexture
(
_gl
.
TEXTURE0
+
slot
);
state
.
bindTexture
(
_gl
.
TEXTURE_CUBE_MAP
,
textureProperties
.
__
image__webglTextureCub
e
);
state
.
bindTexture
(
_gl
.
TEXTURE_CUBE_MAP
,
textureProperties
.
__
webglTextur
e
);
_gl
.
pixelStorei
(
_gl
.
UNPACK_FLIP_Y_WEBGL
,
texture
.
flipY
);
...
...
@@ -432,7 +410,7 @@ function WebGLTextures( _gl, extensions, state, properties, capabilities, utils,
}
else
{
state
.
activeTexture
(
_gl
.
TEXTURE0
+
slot
);
state
.
bindTexture
(
_gl
.
TEXTURE_CUBE_MAP
,
textureProperties
.
__
image__webglTextureCub
e
);
state
.
bindTexture
(
_gl
.
TEXTURE_CUBE_MAP
,
textureProperties
.
__
webglTextur
e
);
}
...
...
@@ -499,20 +477,7 @@ function WebGLTextures( _gl, extensions, state, properties, capabilities, utils,
}
function
uploadTexture
(
textureProperties
,
texture
,
slot
)
{
var
textureType
;
if
(
texture
.
isDataTexture3D
)
{
textureType
=
_gl
.
TEXTURE_3D
;
}
else
{
textureType
=
_gl
.
TEXTURE_2D
;
}
function
initTexture
(
textureProperties
,
texture
)
{
if
(
textureProperties
.
__webglInit
===
undefined
)
{
...
...
@@ -525,12 +490,17 @@ function WebGLTextures( _gl, extensions, state, properties, capabilities, utils,
info
.
memory
.
textures
++
;
}
state
.
activeTexture
(
_gl
.
TEXTURE0
+
slot
);
}
state
.
bindTexture
(
textureType
,
textureProperties
.
__webglTexture
);
function
uploadTexture
(
textureProperties
,
texture
,
slot
)
{
var
textureType
=
(
texture
.
isDataTexture3D
)
?
_gl
.
TEXTURE_3D
:
_gl
.
TEXTURE_2D
;
initTexture
(
textureProperties
,
texture
);
state
.
activeTexture
(
_gl
.
TEXTURE0
+
slot
);
state
.
bindTexture
(
textureType
,
textureProperties
.
__webglTexture
);
_gl
.
pixelStorei
(
_gl
.
UNPACK_FLIP_Y_WEBGL
,
texture
.
flipY
);
_gl
.
pixelStorei
(
_gl
.
UNPACK_PREMULTIPLY_ALPHA_WEBGL
,
texture
.
premultiplyAlpha
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录