Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Ablesons
three.js
提交
be569fdc
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,发现更多精彩内容 >>
未验证
提交
be569fdc
编写于
1月 30, 2020
作者:
M
Mr.doob
提交者:
GitHub
1月 30, 2020
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #18513 from Mugen87/dev32
Editor: Added tone mapping project settings.
上级
2f8769b8
e105ae8a
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
100 addition
and
7 deletion
+100
-7
editor/js/Config.js
editor/js/Config.js
+3
-0
editor/js/Editor.js
editor/js/Editor.js
+1
-0
editor/js/Sidebar.Project.js
editor/js/Sidebar.Project.js
+82
-7
editor/js/Strings.js
editor/js/Strings.js
+8
-0
editor/js/Viewport.js
editor/js/Viewport.js
+6
-0
未找到文件。
editor/js/Config.js
浏览文件 @
be569fdc
...
...
@@ -16,6 +16,9 @@ var Config = function () {
'
project/renderer/antialias
'
:
true
,
'
project/renderer/shadows
'
:
true
,
'
project/renderer/toneMapping
'
:
1
,
// linear
'
project/renderer/toneMappingExposure
'
:
1
,
'
project/renderer/toneMappingWhitePoint
'
:
1
,
'
project/vr
'
:
false
,
...
...
editor/js/Editor.js
浏览文件 @
be569fdc
...
...
@@ -41,6 +41,7 @@ var Editor = function () {
snapChanged
:
new
Signal
(),
spaceChanged
:
new
Signal
(),
rendererChanged
:
new
Signal
(),
rendererUpdated
:
new
Signal
(),
sceneBackgroundChanged
:
new
Signal
(),
sceneFogChanged
:
new
Signal
(),
...
...
editor/js/Sidebar.Project.js
浏览文件 @
be569fdc
...
...
@@ -4,7 +4,7 @@
import
*
as
THREE
from
'
../../build/three.module.js
'
;
import
{
UIPanel
,
UIRow
,
UIInput
,
UICheckbox
,
UIText
,
UIListbox
,
UISpan
,
UIButton
}
from
'
./libs/ui.js
'
;
import
{
UIPanel
,
UIRow
,
UIInput
,
UICheckbox
,
UIText
,
UIListbox
,
UISpan
,
UIButton
,
UISelect
,
UINumber
}
from
'
./libs/ui.js
'
;
import
{
UIBoolean
}
from
'
./libs/ui.three.js
'
;
import
{
SetMaterialCommand
}
from
'
./commands/SetMaterialCommand.js
'
;
...
...
@@ -15,6 +15,8 @@ var SidebarProject = function ( editor ) {
var
signals
=
editor
.
signals
;
var
strings
=
editor
.
strings
;
var
currentRenderer
=
null
;
var
container
=
new
UISpan
();
var
projectsettings
=
new
UIPanel
();
...
...
@@ -56,6 +58,8 @@ var SidebarProject = function ( editor ) {
var
rendererPropertiesRow
=
new
UIRow
();
rendererPropertiesRow
.
add
(
new
UIText
(
strings
.
getKey
(
'
sidebar/project/renderer
'
)
).
setWidth
(
'
90px
'
)
);
// Renderer / Antialias
var
rendererAntialias
=
new
UIBoolean
(
config
.
getKey
(
'
project/renderer/antialias
'
),
strings
.
getKey
(
'
sidebar/project/antialias
'
)
).
onChange
(
function
()
{
config
.
setKey
(
'
project/renderer/antialias
'
,
this
.
getValue
()
);
...
...
@@ -76,31 +80,102 @@ var SidebarProject = function ( editor ) {
projectsettings
.
add
(
rendererPropertiesRow
);
// Tonemapping
var
tonemapping
=
new
UIPanel
();
// Tonemapping / Header
var
headerRow
=
new
UIRow
();
headerRow
.
add
(
new
UIText
(
strings
.
getKey
(
'
sidebar/project/toneMapping
'
).
toUpperCase
()
)
);
tonemapping
.
add
(
headerRow
);
// Tonemapping / Type
var
toneMappingTypeRow
=
new
UIRow
();
var
rendererToneMappingTypeLabel
=
new
UIText
(
strings
.
getKey
(
'
sidebar/project/toneMappingType
'
)
).
setWidth
(
'
90px
'
);
var
rendererToneMappingTypeSelect
=
new
UISelect
().
setOptions
(
{
0
:
'
None
'
,
1
:
'
Linear
'
,
2
:
'
Reinhard
'
,
3
:
'
Uncharted2
'
,
4
:
'
Cineon
'
,
5
:
'
ACESFilmic
'
,
}
).
setWidth
(
'
150px
'
).
onChange
(
function
()
{
config
.
setKey
(
'
project/renderer/toneMapping
'
,
this
.
getValue
()
);
updateRenderer
();
}
);
rendererToneMappingTypeSelect
.
setValue
(
config
.
getKey
(
'
project/renderer/toneMapping
'
)
);
toneMappingTypeRow
.
add
(
rendererToneMappingTypeLabel
,
rendererToneMappingTypeSelect
);
tonemapping
.
add
(
toneMappingTypeRow
);
// Tonemapping / Exposure
var
toneMappingExposureRow
=
new
UIRow
();
var
rendererToneMappingExposureLabel
=
new
UIText
(
strings
.
getKey
(
'
sidebar/project/toneMappingExposure
'
)
).
setWidth
(
'
90px
'
);
var
rendererToneMappingExposure
=
new
UINumber
(
config
.
getKey
(
'
project/renderer/toneMappingExposure
'
)
).
setRange
(
0
,
10
).
onChange
(
function
()
{
config
.
setKey
(
'
project/renderer/toneMappingExposure
'
,
this
.
getValue
()
);
updateTonemapping
();
}
);
toneMappingExposureRow
.
add
(
rendererToneMappingExposureLabel
,
rendererToneMappingExposure
);
tonemapping
.
add
(
toneMappingExposureRow
);
// Tonemapping / White Point
var
toneMappingWhitePointRow
=
new
UIRow
();
var
rendererToneMappingWhitePointLabel
=
new
UIText
(
strings
.
getKey
(
'
sidebar/project/toneMappingWhitePoint
'
)
).
setWidth
(
'
90px
'
);
var
rendererToneMappingWhitePoint
=
new
UINumber
(
config
.
getKey
(
'
project/renderer/toneMappingWhitePoint
'
)
).
setRange
(
0
,
10
).
onChange
(
function
()
{
config
.
setKey
(
'
project/renderer/toneMappingWhitePoint
'
,
this
.
getValue
()
);
updateTonemapping
();
}
);
toneMappingWhitePointRow
.
add
(
rendererToneMappingWhitePointLabel
,
rendererToneMappingWhitePoint
);
tonemapping
.
add
(
toneMappingWhitePointRow
);
container
.
add
(
tonemapping
);
//
function
updateRenderer
()
{
createRenderer
(
rendererAntialias
.
getValue
()
);
createRenderer
(
rendererAntialias
.
getValue
()
,
rendererShadows
.
getValue
(),
rendererToneMappingTypeSelect
.
getValue
()
);
}
function
createRenderer
(
antialias
,
shadows
)
{
function
createRenderer
(
antialias
,
shadows
,
toneMapping
)
{
var
parameters
=
{
antialias
:
antialias
};
var
r
enderer
=
new
THREE
.
WebGLRenderer
(
parameters
);
currentR
enderer
=
new
THREE
.
WebGLRenderer
(
parameters
);
if
(
shadows
)
{
r
enderer
.
shadowMap
.
enabled
=
true
;
currentR
enderer
.
shadowMap
.
enabled
=
true
;
// renderer.shadowMap.type = THREE.PCFSoftShadowMap;
}
signals
.
rendererChanged
.
dispatch
(
renderer
);
currentRenderer
.
toneMapping
=
parseFloat
(
toneMapping
);
signals
.
rendererChanged
.
dispatch
(
currentRenderer
);
}
function
updateTonemapping
()
{
currentRenderer
.
toneMappingExposure
=
rendererToneMappingExposure
.
getValue
();
currentRenderer
.
toneMappingWhitePoint
=
rendererToneMappingWhitePoint
.
getValue
();
signals
.
rendererUpdated
.
dispatch
();
}
createRenderer
(
config
.
getKey
(
'
project/renderer/antialias
'
),
config
.
getKey
(
'
project/renderer/shadows
'
)
);
createRenderer
(
config
.
getKey
(
'
project/renderer/antialias
'
),
config
.
getKey
(
'
project/renderer/shadows
'
)
,
config
.
getKey
(
'
project/renderer/toneMapping
'
)
);
// Materials
...
...
editor/js/Strings.js
浏览文件 @
be569fdc
...
...
@@ -287,6 +287,10 @@ var Strings = function ( config ) {
'
sidebar/project/renderer
'
:
'
Renderer
'
,
'
sidebar/project/antialias
'
:
'
antialias
'
,
'
sidebar/project/shadows
'
:
'
shadows
'
,
'
sidebar/project/toneMapping
'
:
'
Tone Mapping
'
,
'
sidebar/project/toneMappingType
'
:
'
Type
'
,
'
sidebar/project/toneMappingExposure
'
:
'
Exposure
'
,
'
sidebar/project/toneMappingWhitePoint
'
:
'
White Point
'
,
'
sidebar/project/materials
'
:
'
Materials
'
,
'
sidebar/project/Assign
'
:
'
Assign
'
,
...
...
@@ -569,6 +573,10 @@ var Strings = function ( config ) {
'
sidebar/project/renderer
'
:
'
渲染器
'
,
'
sidebar/project/antialias
'
:
'
抗锯齿
'
,
'
sidebar/project/shadows
'
:
'
阴影
'
,
'
sidebar/project/toneMapping
'
:
'
Tone Mapping
'
,
'
sidebar/project/toneMappingType
'
:
'
Type
'
,
'
sidebar/project/toneMappingExposure
'
:
'
Exposure
'
,
'
sidebar/project/toneMappingWhitePoint
'
:
'
White Point
'
,
'
sidebar/project/materials
'
:
'
材质
'
,
'
sidebar/project/Assign
'
:
'
应用
'
,
...
...
editor/js/Viewport.js
浏览文件 @
be569fdc
...
...
@@ -318,6 +318,12 @@ var Viewport = function ( editor ) {
}
);
signals
.
rendererUpdated
.
add
(
function
()
{
render
();
}
);
signals
.
rendererChanged
.
add
(
function
(
newRenderer
)
{
if
(
renderer
!==
null
)
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录