Add emission and subsurface viewport mode
This commit is contained in:
@@ -77,12 +77,14 @@ package arm;
|
||||
var ViewMetallic = 5;
|
||||
var ViewOpacity = 6;
|
||||
var ViewHeight = 7;
|
||||
var ViewTexCoord = 8;
|
||||
var ViewObjectNormal = 9;
|
||||
var ViewMaterialID = 10;
|
||||
var ViewObjectID = 11;
|
||||
var ViewMask = 12;
|
||||
var ViewPathTrace = 13;
|
||||
var ViewEmission = 8;
|
||||
var ViewSubsurface = 9;
|
||||
var ViewTexCoord = 10;
|
||||
var ViewObjectNormal = 11;
|
||||
var ViewMaterialID = 12;
|
||||
var ViewObjectID = 13;
|
||||
var ViewMask = 14;
|
||||
var ViewPathTrace = 15;
|
||||
}
|
||||
|
||||
@:enum abstract RenderMode(Int) from Int to Int {
|
||||
|
||||
@@ -420,6 +420,14 @@ class MakeMesh {
|
||||
else if (Context.viewportMode == ViewHeight && Context.layer.paintHeight) {
|
||||
frag.write('fragColor[1] = vec4(vec3(height, height, height), 1.0);');
|
||||
}
|
||||
else if (Context.viewportMode == ViewEmission) {
|
||||
frag.write('float emis = int(matid * 255.0) % 3 == 1 ? 1.0 : 0.0;');
|
||||
frag.write('fragColor[1] = vec4(vec3(emis, emis, emis), 1.0);');
|
||||
}
|
||||
else if (Context.viewportMode == ViewSubsurface) {
|
||||
frag.write('float subs = int(matid * 255.0) % 3 == 2 ? 1.0 : 0.0;');
|
||||
frag.write('fragColor[1] = vec4(vec3(subs, subs, subs), 1.0);');
|
||||
}
|
||||
else if (Context.viewportMode == ViewTexCoord) {
|
||||
frag.write('fragColor[1] = vec4(texCoord, 0.0, 1.0);');
|
||||
}
|
||||
|
||||
@@ -256,13 +256,15 @@ class UIMenu {
|
||||
tr("Metallic"),
|
||||
tr("Opacity"),
|
||||
tr("Height"),
|
||||
tr("Emission"),
|
||||
tr("Subsurface"),
|
||||
tr("TexCoord"),
|
||||
tr("Object Normal"),
|
||||
tr("Material ID"),
|
||||
tr("Object ID"),
|
||||
tr("Mask")
|
||||
];
|
||||
var shortcuts = ["l", "b", "n", "o", "r", "m", "a", "h", "t", "1", "2", "3", "4"];
|
||||
var shortcuts = ["l", "b", "n", "o", "r", "m", "a", "h", "e", "s", "t", "1", "2", "3", "4"];
|
||||
#if (kha_direct3d12 || kha_vulkan)
|
||||
modes.push(tr("Path Traced"));
|
||||
shortcuts.push("p");
|
||||
|
||||
@@ -381,13 +381,15 @@ class UISidebar {
|
||||
tr("Metallic"),
|
||||
tr("Opacity"),
|
||||
tr("Height"),
|
||||
tr("Emission"),
|
||||
tr("Subsurface"),
|
||||
tr("TexCoord"),
|
||||
tr("Object Normal"),
|
||||
tr("Material ID"),
|
||||
tr("Object ID"),
|
||||
tr("Mask")
|
||||
];
|
||||
var shortcuts = ["l", "b", "n", "o", "r", "m", "a", "h", "t", "1", "2", "3", "4"];
|
||||
var shortcuts = ["l", "b", "n", "o", "r", "m", "a", "h", "e", "s", "t", "1", "2", "3", "4"];
|
||||
#if (kha_direct3d12 || kha_vulkan)
|
||||
modes.push(tr("Path Traced"));
|
||||
shortcuts.push("p");
|
||||
@@ -406,7 +408,7 @@ class UISidebar {
|
||||
Context.setViewportMode(modeHandle.position);
|
||||
ui.changed = true;
|
||||
}
|
||||
}, 14 #if (kha_direct3d12 || kha_vulkan) + 1 #end );
|
||||
}, 16 #if (kha_direct3d12 || kha_vulkan) + 1 #end );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user