Jump to content

Michael Goldshteyn

Regular Member
  • Content Count

  • Joined

  • Last visited

Community Reputation

7 Noble Beginner

About Michael Goldshteyn

  • Rank
    C4D Cafe Junior

Profile Information

  • First Name
  • Last Name
  • Location

Cinema 4D Information

  • C4D Version
    R20.026 Studio

Hardware Information


Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. I guess I understand what you mean, but even something as generic as: - Fixed modeling issues related to making cuts using the Line Cut tool. ..., would be far more helpful than: - Fixed several modeling issues ..., by being at least somewhat specific about the tool, tools, or modeling actions that are affected by the fix. That's all I'm saying...
  2. Would it be possible to know which issues those are, particularly in modeling. I'd like to know if they are in commonly used tools or something obscure that I'll probably never come across. For example: Fixed issue when modeling splines causing the end point of the spline to erroneously connect to the view center rather than the first point of the spline when "Close Spline" is turned on in the Spline object settings. (And that's an actual S22 bug, btw). or Fixed issue where, sometimes, points randomly get added to unrelated edges when cuts are made using the Line Cut tool while Snap is enabled in Vertex Snap + Edge Snap mode. (Another, actual S22 bug)
  3. I get that, my question was one of, stability issues in what?? Option 1: All of the modeling tools and in addition to that, XRef? Option 2: Just the modeling tools related to XRef
  4. Great thanks! I wonder what they mean by: Fixed stability issues with modeling and XRefs Does that imply that: - They fixed modeling issues and they also fixed XRefs issues or - They fixed modeling issues having to do with XRefs There are still quite a few general modeling bugs and if they fixed any of these, this update is a no-brainer - useful to everyone! If it's just issues around XRefs, well, not as useful or important to most people.
  5. Right, but it would be nice to know whether it's worth updating to (i.e., how minor are the fixes and what are they?).
  6. It is available for install at MAXON's site, but I can't seem to find any release notes on how it differs from the prior release.
  7. To make the question I am going to ask clear, consider the following scenario: Before carefully phrasing my question, let me describe what you see in detail in the image above. We have two primitive cube objects, respectively called Red Cube and Blue Cube (left side of above picture with the Object Manager representation shown top of center) The two cubes share the same shiny white material called Generic Material. The settings of the Color layer portion of the material's definition are shown in the Material Editor (center of above picture). A bright yellow arrow points to the Texture slot, showing that a Mograph Color Shader was inserted there. This shader allowed me to parameterize and vary the color portion of the material for each of the two cubes, based on their respective Color setting under the Basic tab of their attributes as shown in the Attribute Managers for each of them (right side of picture) and pointed to by the dark yellow arrows. The result of all of this is that the same shiny white material was used for both objects, but by using the Mograph Color Shader in a texture slot, I was able to customize the material on a per object basis, using each object's Color setting from its Basic properties. Unfortunately, this allowed me to use one aspect of the object, its color, to effect a shader inside the material associated with it via a Texture Tag. What I would like to do is to use various aspects of an object, for example coming from its User Data, to affect different settings of a (generic template) material associated with the object (and other objects) in order to customize this generic material on a per object basis. The alternative to the above approach, which is commonly used, is to have a separate material per object and customize each based on the object's needs. I am trying to avoid this and use a single common material or set of materials across many objects, but still be able to customize various aspects of the materials in an object specific way using object specific properties. From my research, the only way I have found to do this is to use the Mograph Color Shader which pulls in color data from an object's Color property, a property that is object specific. I don't see any other attributes of an object, especially custom ones that I can use via User Data, which would enable me to do something similar - to customize a common material or set of materials on a per object basis, with those customizations only applying to the individual objects and causing no permanent changes to the material template(s) that would affect other objects sharing the material. I am hopeful that I have been clear in describing my question: How do I customize a common shared (template) material on a per object basis without having to resort to making a custom copy of the entire template material for each object and customizing these newly created per object materials independently? In the example I provided, instead of creating two materials, Red Material and Blue Material with completely independent settings, I used one Generic Material that pulls in, and therefore is customized on a per object basis, the Color layer's color using the Color property of each object to which it is attached. I would like to generalize this concept to other Material properties (layers and attributes) and potentially use custom object specific User Data or data somehow attached with each object to drive the customization of a material that is shared among those objects, in a per object specific way and without the customizations cascading to other objects sharing the material. Thank you ahead of time for any ideas and advice.
  8. All good ideas, currently working on another (far more complex) Plugin Idea, but plan to come back to this one.
  9. So, here is the same idea re-implemented (presumably) using the same technique and mechanisms that XS Yann employed for his (purchasable) xsPolyinstance plugin, the difference being that I have the source code since I wrote it, fields work just fine to allow parametric (more complex and topology independent) selections to be made, and I can add to and extend the feature set as fresh ideas pour in. Also, I am willing to share the resulting python source code which is well commented, explaining what it does and why it does it. The way this mechanism works is by using a Python tag on the Materialized Object (an empty Null materialized into an empty (i.e., devoid of points/edges/polygons) Polygon Object) to which the topology (points, edges, and polygons) of a (materialized) Parametric Group are transferred. The source object is linked to this tag via one of its User Data properties (i.e., Object to Materialize), as can be seen in the following screenshot of said properties. Changes to the topology of the objects in the parametric group are immediately reflected in the materialized rendition of those objects, with textures reapplied accordingly (per the volume field characteristics of the transparent volumes shown in the following image). Also, it works just fine in C4D S22 as an added bonus: Michael
  10. Unfortunately, best I can tell, the xs* series of tools is pretty much dead in the water support and update wise, since their author, xs yann (and his web site) are long gone. With regard to the ToPoly plugin, I could not find it, but maybe I was searching for the wrong keywords, so if you can reply with a link to it, I'd appreciate it. I want to look over the purchasable options and compare them to what I have written so far.
  11. But wait there's more! Why have "fixed" polygon selections that break as soon as the topology of the objects to be textured changes, when you can use primitives and parametric shapes to volume select? Now things are getting really interesting from a procedural perspective:
  12. Well, I got it to work via a fairly complex Python Generator script that took several hours to write consisting of about 170 lines of commented code. I'll post it later after I clean it up and test it further. Here are the results: Gouraud Shaded: ..., with lines to show polygons: Object Hierarchy The Python Generator creates a single polygonal object out of the sibling Null that follows it (named Parametric Group in the image below). Then, the Correction Deformer can be employed to create Polygon Selection tags from that single generated polygonal object, which can then be moved them to the Python Generator for purposes of partial texturing. The result is that the Material Tags on the generator with corresponding selections assigned to them allow for a subset of the polygons resulting from the subdivision, to get textured. It should be noted that the generator is forced to copy (clones of) the selection tags to the polygonal object it generates in order for them to have the desired affect. Sadly, if this isn't done, we're back to square one just like with the SubD Gen that started this adventure. Fortunately, this process is automatic and happens behind the scenes when the generated object is, well, generated. All of this is done without destroying or having to manually materialize the parametric modeled hierarchy as the materialized polygonal object gets created. The parametric nature of said hierarchy allows for meaningful high level changes in real time and such changes get automatically propagated to the polygonal object created by the generator (sans any NGons, since all ngon lines need to be resolved to tris and quads, due to poor NGon support in Python). Of course major topological changes to the procedural portion will "corrupt" the polygonal selections in the generator's tags, so this example does not represent the best use case for this technique, since it shows many disparate objects merged into one and the topology is therefore closely coupled to all of them. It is a good demo of the capabilities of the generator and certainly helps to get the point across, though. A real use of this would be to have several (or many) triplet groups, consisting of the generator, a reasonable self-contained parametric subset, and a temporary correction modifier that can be used to generate the selection tags. These triplets would then get grouped as part of a larger model and allow for the continued use of parametric objects such as primitives, generators, and deformers all through the development of the model with the ability to texture partial subsets of the resulting polygonal constructs they create.
  13. If that is in fact the case, that you cannot partially texture (only some of the) polygons of a generated object - one that goes through one of Cinema's generators, whether SubD or any of the others including Loft, Lathe, Extrude, and Sweep). And, you can't even do this by throwing the whole lot into a Connect generator, whose sole purpose is to "polygonalize" (i.e., materialize into a Polygonal Object) its child nodes, then that is a very large shortcoming of C4D in terms of supporting a procedural non-destructive workflow. It is also very surprising, because it is clear that under the covers, Cinema is generating these Polygon Objects and displaying them in all of their polygonal glory the Editor (i.e., Views). I'll go farther and say that the Correction Deformer even sees the polygons correctly and allows one to generate a Polygon Selection Tag, so all the info is clearly present inside Cinema 4D. Having to constantly make objects editable in order to be able to texture only a portion of their polygons sounds like a really bad approach from a non-destructive procedural perspective, or at the least involves a lot of overhead having to stash away procedural version (for example in some sort of template layer) and then copy and collapse them to Editable Polygons that are completely physically decoupled from their procedural "beginnings." If no-one comes up with a good simple automated C4D solution to this that I am simply overlooking, because it seems to me like this is a commonly needed feature, I am going to have to write a plug-in to allow for this sort of thing. I feel that this is something that C4D really should have available to keep up with other more procedural modeling tools. Michael
  14. Two different solutions appear above you. It would be very helpful if you pointed out which of the two you are referring to. Michael
  • Create New...


Dear members, we are aware of few more bugs that are still present withing the theme.We just wanted to let you know that we are working to fix them as soon as possible.


Please be aware that we are manually approving all new registrations, due to spam prevention. Please be patient in case you cannot login right away, we will approve you within 12h or less if we decide you are not potential spammer. 


Thanks for understanding! :cowboypistol: