Doc > Changelog > 1.1.258
Constructive Solid Geometry
This version introduces geometry nodes that are specialised for CSG, or Constructive Solid Geometry. You get more powerful boolean operations, that works for both 3D mesh as well as 2D curves.
Those operations are created inside the new CSG node context. In order to create those:
- 1: Create an obj/geo as usual.
- 2: Create a sop/csgNetwork, turn on its display flag.
- 3: You can then add CSG nodes inside.
Here is an example scene to get you started.
Here is the current node list:
- Arc
- Boolean
- Center
- Circle
- Color
- Copy
- Cube
- CylinderElliptic
- Cylinder
- Dodecahedron
- Ellipse
- Ellipsoid
- Expand
- ExtrudeLinear
- ExtrudeRectangular
- ExtrudeRotate
- Hull
- Line
- Merge
- Mirror
- Null
- Offset
- Polygon
- PolyHedron
- Project
- Rectangle
- ResetTransform
- Rotate
- Scale
- Sphere
- Star
- Switch
- Torus
- Translate
- Triangle
Cameras at the geometry level
Just like version 218 introduced lights at the geometry level, this version adds cameras at the geometry level. This is very much inspired by Houdini's Solaris which is a very powerful scene creation tool.
Note that the obj level obj/perspectiveCamera and obj/orthographicCamera are still here. Their usage has not changed, even though internally they use the same logic as the geometry level cameras.
So you get the following new nodes:
- sop/perspectiveCamera: creates a perspective camera
- sop/orthographicCamera: creates an orthographic camera
- sop/cameraRenderer: assigns a specific renderer to the camera. This is the same as the assigning a renderer to the obj level camera with the
setRenderer
param. - sop/cameraCSSRenderer: assigns a specific CSS renderer to the camera. This is the same as the assigning a CSS renderer to the obj level camera with the
setCSSRenderer
param. - sop/cameraControls: assigns controls to the cameras, such as event/cameraOrbitControls. This is the same as the assigning controls to the obj level camera with the
controls
param. - sop/cameraFrameMode: defines how the camera field of view adjusts to screen resizing. This is the same as the obj level camera
frameMode
param - sop/cameraPostProcess: sets any post processing effect. This is the same as the obj level camera
postProcessNode
param. - sop/cameraRenderScene: sets the scene being rendered by the camera. This is the same as the obj level camera
scene
param.
Some of the advantages this will offer:
- you can create more cameras easily, using nodes like sop/copy.
- you can have a better control of how those cameras are configured, using the nodes mentioned above. It's much easier to create different camera variations, and bypass nodes to test different rendering styles.
- you'll be able to use the cameras with the recent actor nodes, so even cameras will be able to have behaviors added to them. Those could be simply to update the position when an event is trigger, or they could be more complex behaviors. I'll cover more on this in the near future.
Other changes
- sop/fuse: This node previously only worked for points. It now also works for meshes and lines.
Learn about new versions with our newsletter, twitter, forum or discord.