Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
车家大少爷
three.js
提交
c1cb8e90
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,发现更多精彩内容 >>
提交
c1cb8e90
编写于
12月 01, 2010
作者:
A
alteredq
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Added handling of 2d textures in MeshShaderMaterial.
上级
0f918488
变更
4
展开全部
隐藏空白更改
内联
并排
Showing
4 changed file
with
423 addition
and
413 deletion
+423
-413
build/Three.js
build/Three.js
+122
-122
build/ThreeDebug.js
build/ThreeDebug.js
+123
-123
build/ThreeExtras.js
build/ThreeExtras.js
+140
-140
src/renderers/WebGLRenderer.js
src/renderers/WebGLRenderer.js
+38
-28
未找到文件。
build/Three.js
浏览文件 @
c1cb8e90
此差异已折叠。
点击以展开。
build/ThreeDebug.js
浏览文件 @
c1cb8e90
此差异已折叠。
点击以展开。
build/ThreeExtras.js
浏览文件 @
c1cb8e90
此差异已折叠。
点击以展开。
src/renderers/WebGLRenderer.js
浏览文件 @
c1cb8e90
...
@@ -445,26 +445,9 @@ THREE.WebGLRenderer = function ( scene ) {
...
@@ -445,26 +445,9 @@ THREE.WebGLRenderer = function ( scene ) {
if
(
mMap
)
{
if
(
mMap
)
{
if
(
!
material
.
map
.
__webGLTexture
&&
material
.
map
.
image
.
loaded
)
{
setTexture
(
mMap
,
0
);
material
.
map
.
__webGLTexture
=
_gl
.
createTexture
();
_gl
.
bindTexture
(
_gl
.
TEXTURE_2D
,
material
.
map
.
__webGLTexture
);
_gl
.
texImage2D
(
_gl
.
TEXTURE_2D
,
0
,
_gl
.
RGBA
,
_gl
.
RGBA
,
_gl
.
UNSIGNED_BYTE
,
material
.
map
.
image
);
_gl
.
texParameteri
(
_gl
.
TEXTURE_2D
,
_gl
.
TEXTURE_WRAP_S
,
paramThreeToGL
(
material
.
map
.
wrap_s
)
);
_gl
.
texParameteri
(
_gl
.
TEXTURE_2D
,
_gl
.
TEXTURE_WRAP_T
,
paramThreeToGL
(
material
.
map
.
wrap_t
)
);
_gl
.
texParameteri
(
_gl
.
TEXTURE_2D
,
_gl
.
TEXTURE_MAG_FILTER
,
_gl
.
LINEAR
);
_gl
.
texParameteri
(
_gl
.
TEXTURE_2D
,
_gl
.
TEXTURE_MIN_FILTER
,
_gl
.
LINEAR_MIPMAP_LINEAR
);
_gl
.
generateMipmap
(
_gl
.
TEXTURE_2D
);
_gl
.
bindTexture
(
_gl
.
TEXTURE_2D
,
null
);
}
_gl
.
activeTexture
(
_gl
.
TEXTURE0
);
_gl
.
bindTexture
(
_gl
.
TEXTURE_2D
,
material
.
map
.
__webGLTexture
);
_gl
.
uniform1i
(
program
.
uniforms
.
tMap
,
0
);
_gl
.
uniform1i
(
program
.
uniforms
.
tMap
,
0
);
_gl
.
uniform1i
(
program
.
uniforms
.
enableMap
,
1
);
_gl
.
uniform1i
(
program
.
uniforms
.
enableMap
,
1
);
}
else
{
}
else
{
...
@@ -475,14 +458,9 @@ THREE.WebGLRenderer = function ( scene ) {
...
@@ -475,14 +458,9 @@ THREE.WebGLRenderer = function ( scene ) {
if
(
envMap
)
{
if
(
envMap
)
{
if
(
material
.
env_map
)
{
setCubeTexture
(
envMap
,
1
);
setCubeTexture
(
material
.
env_map
,
1
);
_gl
.
uniform1i
(
program
.
uniforms
.
tCube
,
1
);
_gl
.
uniform1i
(
program
.
uniforms
.
tCube
,
1
);
}
_gl
.
uniform1i
(
program
.
uniforms
.
enableCubeMap
,
1
);
_gl
.
uniform1i
(
program
.
uniforms
.
enableCubeMap
,
1
);
}
else
{
}
else
{
...
@@ -1212,7 +1190,16 @@ THREE.WebGLRenderer = function ( scene ) {
...
@@ -1212,7 +1190,16 @@ THREE.WebGLRenderer = function ( scene ) {
_gl
.
uniform1i
(
location
,
value
);
_gl
.
uniform1i
(
location
,
value
);
texture
=
uniforms
[
u
].
texture
;
texture
=
uniforms
[
u
].
texture
;
setCubeTexture
(
texture
,
value
);
if
(
texture
instanceof
THREE
.
TextureCube
)
{
setCubeTexture
(
texture
,
value
);
}
else
if
(
texture
instanceof
THREE
.
Texture
)
{
setTexture
(
texture
,
value
);
}
}
}
...
@@ -1259,6 +1246,29 @@ THREE.WebGLRenderer = function ( scene ) {
...
@@ -1259,6 +1246,29 @@ THREE.WebGLRenderer = function ( scene ) {
};
};
function
setTexture
(
texture
,
slot
)
{
if
(
!
texture
.
__webGLTexture
&&
texture
.
image
.
loaded
)
{
texture
.
__webGLTexture
=
_gl
.
createTexture
();
_gl
.
bindTexture
(
_gl
.
TEXTURE_2D
,
texture
.
__webGLTexture
);
_gl
.
texImage2D
(
_gl
.
TEXTURE_2D
,
0
,
_gl
.
RGBA
,
_gl
.
RGBA
,
_gl
.
UNSIGNED_BYTE
,
texture
.
image
);
_gl
.
texParameteri
(
_gl
.
TEXTURE_2D
,
_gl
.
TEXTURE_WRAP_S
,
paramThreeToGL
(
texture
.
wrap_s
)
);
_gl
.
texParameteri
(
_gl
.
TEXTURE_2D
,
_gl
.
TEXTURE_WRAP_T
,
paramThreeToGL
(
texture
.
wrap_t
)
);
_gl
.
texParameteri
(
_gl
.
TEXTURE_2D
,
_gl
.
TEXTURE_MAG_FILTER
,
_gl
.
LINEAR
);
_gl
.
texParameteri
(
_gl
.
TEXTURE_2D
,
_gl
.
TEXTURE_MIN_FILTER
,
_gl
.
LINEAR_MIPMAP_LINEAR
);
_gl
.
generateMipmap
(
_gl
.
TEXTURE_2D
);
_gl
.
bindTexture
(
_gl
.
TEXTURE_2D
,
null
);
}
_gl
.
activeTexture
(
_gl
.
TEXTURE0
+
slot
);
_gl
.
bindTexture
(
_gl
.
TEXTURE_2D
,
texture
.
__webGLTexture
);
};
function
cacheUniformLocations
(
program
,
identifiers
)
{
function
cacheUniformLocations
(
program
,
identifiers
)
{
var
i
,
l
,
id
;
var
i
,
l
,
id
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录