|
Argent Stonecutter
Emergency Mustelid
Join date: 20 Sep 2005
Posts: 20,263
|
11-23-2005 09:15
After futzing around with twisted toruses and tiling together truncated prisms, I'm getting really tired of the limited shapes available. Adding two more parameters to prims would make a huge difference. And they could be crammed into 4 bits... half a byte.
1. Number of sides, 3 bits.
Values: depends on the primitive. For a box, this would be the number of sides of the base of the prism, from 3 to 10 (0-7 + 3)... for a sphere, a selection of platonic solids and tessalated spheres or stellated platonic solids... and so on.
2. Twist axis, 1 bit.
Values: Z (twist) or X (bend). This would remove a lot of the need for truncated toruses and the resulting oversized bounding boxes for the physics engine to deal with.
|
|
Jeffrey Gomez
Cubed™
Join date: 11 Jun 2004
Posts: 3,522
|
11-23-2005 09:30
Hmm.... Actually, this isn't a bad idea. The only problem is they would need to create a new "version" of prims to get this done effectively. Otherwise, older scripts using llSetPrimitiveParams would break. (For primitive versioning info, see here) Though, given past discussion, I'm not sure if the system would support another version as it is now. That's a good question for people like Strife, who've delved into that far more than I have. As for the rest, some general questions: - How would you dictate cut, hollow, and twist axes on a variable-surface cube? - What new structures do you feel these would be beneficial to? - How would you clamp down on the exponential viewer lag resulting from said tessellation?Personally, I just want them to move to meshes. But that would be too simple. Yes, I know about all that streaming hoo-ha behind prims. Don't get me started.
_____________________
---
|
|
Argent Stonecutter
Emergency Mustelid
Join date: 20 Sep 2005
Posts: 20,263
|
11-23-2005 09:56
From: Jeffrey Gomez Actually, this isn't a bad idea. The only problem is they would need to create a new "version" of prims to get this done effectively. Otherwise, older scripts using llSetPrimitiveParams would break. Don't set these params through PRIM_TYPE, set them through PRIM_SIDES and PRIM_TWIST_TYPE? From: someone - How would you dictate cut, hollow, and twist axes on a variable-surface cube? The SIDES would change the number of sides of the base of the prism. 3 would be a triangular prism, 5 would be a pentagonal, and so on. For the sphere, the platonic solids have natural orientations. The only difference is that square and natural hollows would no longer be the same. From: someone - What new structures do you feel these would be beneficial to? Variable sided prisms would allow for more natural non-rectangular structures... think of a room made from a hollow, sliced, pentagonal or hexagonal prism. Tesselated spheres give you single-prim geodesic domes, and are actually easier on the rendering engine than spherical domes. Bent prism and cylinders would allow for more natural looking prim hair and other organic shapes. A bent spiralled torus would be a great organic shape, or could be a hanging coiled pipe in a mechanical design. From: someone - How would you clamp down on the exponential viewer lag resulting from said tessellation?What lag? All spheres are tesselated when they're converted to a mesh. These would actually be simpler to render than smooth spheres... think soccerballs, dodecahedrons or icosahedrons, buckyballs...
|