mirror of
https://git.mirrors.martin98.com/https://github.com/Ultimaker/Cura
synced 2025-08-14 07:35:59 +08:00
Merge branch 'master' of https://github.com/Ultimaker/Cura
This commit is contained in:
commit
ea5a95edaa
@ -17,6 +17,17 @@ MYPY = False
|
|||||||
if MYPY:
|
if MYPY:
|
||||||
from UM.Scene.Camera import Camera
|
from UM.Scene.Camera import Camera
|
||||||
|
|
||||||
|
|
||||||
|
# Make color brighter by normalizing it (maximum factor 2.5 brighter)
|
||||||
|
def prettier_color(l):
|
||||||
|
maximum = max(l[:3])
|
||||||
|
if maximum > 0:
|
||||||
|
factor = min(1 / maximum, 2.5)
|
||||||
|
else:
|
||||||
|
factor = 1.0
|
||||||
|
return [min(i * factor, 1.0) for i in l]
|
||||||
|
|
||||||
|
|
||||||
## A render pass subclass that renders slicable objects with default parameters.
|
## A render pass subclass that renders slicable objects with default parameters.
|
||||||
# It uses the active camera by default, but it can be overridden to use a different camera.
|
# It uses the active camera by default, but it can be overridden to use a different camera.
|
||||||
#
|
#
|
||||||
@ -41,6 +52,9 @@ class PreviewPass(RenderPass):
|
|||||||
if not self._shader:
|
if not self._shader:
|
||||||
self._shader = OpenGL.getInstance().createShaderProgram(Resources.getPath(Resources.Shaders, "overhang.shader"))
|
self._shader = OpenGL.getInstance().createShaderProgram(Resources.getPath(Resources.Shaders, "overhang.shader"))
|
||||||
self._shader.setUniformValue("u_overhangAngle", 1.0)
|
self._shader.setUniformValue("u_overhangAngle", 1.0)
|
||||||
|
self._shader.setUniformValue("u_ambientColor", [0.1, 0.1, 0.1, 1.0])
|
||||||
|
self._shader.setUniformValue("u_specularColor", [0.6, 0.6, 0.6, 1.0])
|
||||||
|
self._shader.setUniformValue("u_shininess", 20.0)
|
||||||
|
|
||||||
self._gl.glClearColor(0.0, 0.0, 0.0, 0.0)
|
self._gl.glClearColor(0.0, 0.0, 0.0, 0.0)
|
||||||
self._gl.glClear(self._gl.GL_COLOR_BUFFER_BIT | self._gl.GL_DEPTH_BUFFER_BIT)
|
self._gl.glClear(self._gl.GL_COLOR_BUFFER_BIT | self._gl.GL_DEPTH_BUFFER_BIT)
|
||||||
@ -52,7 +66,7 @@ class PreviewPass(RenderPass):
|
|||||||
for node in DepthFirstIterator(self._scene.getRoot()):
|
for node in DepthFirstIterator(self._scene.getRoot()):
|
||||||
if node.callDecoration("isSliceable") and node.getMeshData() and node.isVisible():
|
if node.callDecoration("isSliceable") and node.getMeshData() and node.isVisible():
|
||||||
uniforms = {}
|
uniforms = {}
|
||||||
uniforms["diffuse_color"] = node.getDiffuseColor()
|
uniforms["diffuse_color"] = prettier_color(node.getDiffuseColor())
|
||||||
batch.addItem(node.getWorldTransformation(), node.getMeshData(), uniforms = uniforms)
|
batch.addItem(node.getWorldTransformation(), node.getMeshData(), uniforms = uniforms)
|
||||||
|
|
||||||
self.bind()
|
self.bind()
|
||||||
|
@ -5,12 +5,12 @@
|
|||||||
|
|
||||||
"fonts": {
|
"fonts": {
|
||||||
"large": {
|
"large": {
|
||||||
"size": 1.25,
|
"size": 1.35,
|
||||||
"bold": true,
|
"bold": true,
|
||||||
"family": "Noto Sans"
|
"family": "Noto Sans"
|
||||||
},
|
},
|
||||||
"large_nonbold": {
|
"large_nonbold": {
|
||||||
"size": 1.25,
|
"size": 1.35,
|
||||||
"family": "Noto Sans"
|
"family": "Noto Sans"
|
||||||
},
|
},
|
||||||
"default": {
|
"default": {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user