Jump to content


  • Content count

  • Donations

    0.00 CAD 
  • Joined

  • Last visited

Community Reputation

0 Neutral

About Christoph_H

  • Rank

Personal Information

  • Name
  • Location
  1. Reflection Occlusion

    yes, it makes sense. thanks.
  2. Reflection Occlusion

    For example, I was rendering a scene. But I forgot the Depth layer or a simple mask. Then I don't want to render the beauty pass again. It'll take longer than that.
  3. Reflection Occlusion

    interesting. I didn't know the stylesheets yet. Gives you a lot of options. Thank you. But basically you can't switch off the beauty pass? At least that is possible with other programs.
  4. Reflection Occlusion

    thanks for the info. There's another thing I'm interested in: How can I render a pass alone? So without a beauty pass?
  5. Reflection Occlusion

    Maybe that was confusing. But that's what I mean: A reflection in color and a mask.
  6. Reflection Occlusion

    sounds good. But I can't manage it somehow. Does that work for you? Thats a similar solution but in my opinion a little bit clumsy. An alternative way would be good.
  7. Reflection Occlusion

    Hi, is there a possibility to put on a reflection mask? I can set a layer in the render passes that only render a ground reflection. Can I put on a greyscale mask for that? thanks.
  8. Hi, how is it possible to get shadow and reflections from object for one certain object? Is it possible to hide the shadow/reflection casting object? thanks. * I have re-sorted this topic. I posted it in the wrong category before but already got an answer. davpe: for reflections you want to look at Reflection masks (on receiving object). for shadow you can remove shadow render visibility (on casting object). both can be found in object render properties. for primary visibility you can mark objects as phantom.
  9. Basic question about loop behavior at Vex

    ok. loop_questions.hiplc
  10. Hi, I have a point cloud with 2 different colors. If at least 2 red dots come too close, one of them should turn green. I work with pcfind. However, both become green in the process. Well, they are also within the mutual selection radius. I tried to filter in my script, but I'm stuck. It should be the case that the points and arrays are processed one after the other? Finally, one point of the “dense point group” should remain, since the others have already turned green and can no longer select it… the structure should be: In the first loop, based on the first array (the points that the surrounding search and store in another array). In the second loop, the second array is used. On the basis of the second array, the points are examined and checked whether they are red. If so, they turn green. Finally, another if statement should ensure that all points that turn green lose their arrays (and are therefore no longer able to recolor other points). This should leave the last red dot of an intersecting group of dots. But he doesn't. The wrangler doesn't realize the new green points. However, it works again when the last 2 if statements appears in a new wrangler. But that's the problem. Then it is outside the loop. Is all this normal? And how can I achieve my desired effect? Help would be great. // wrangler 1 @Cd = 0; float seed = chf("seed"); float prob = chf("prob"); float r = rand(seed+@ptnum); @Cd = set( prob > r, prob < r,0 ); float rad = 0.5; if (@Cd.r == 1) { setpointgroup(0,"a",@ptnum,1); i[]@pclouds = pcfind(0,"P",@P,rad,15); removeindex(i[]@pclouds,0); i[]@pclouds = sort(i[]@pclouds); } // wrangler 2 - I must set up a new one, because the point group can only be read in a new wrangler. Is this normal? i[]@reds = expandpointgroup(0,"a"); for (int j = 0; j < chi("iter"); j++) { int i = i[]@reds[j]; if (@ptnum == i) { for (int k = 0; k < chi("iter2"); k++) { int l = i[]@pclouds[k]; if (@Cd.r == 1) { setpointattrib(0,"Cd",l,set(0,1,0)); } if (@Cd.g == 1) { resize(i[]@pclouds,0); } } } } is a weird situation because this loop works: for (int i = 0; i < chi("iter"); i++) { if (@Cd.r == 1) { if (@P.y == 2) { @P.y += 1; } if (@P.y == 1) { @P.y += 1; } if (@P.y == 0) { @P.y += 1; } } } So the problem is the function setpointattrib(): It just doesn't work. for (int i = 0; i < chi("iter"); i++) { if (@Cd.g == 1) { @P.y ++; } if (@Cd.r == 1) { setpointattrib(0,"Cd",@ptnum,set(0,1,0)); } } But I need that when each point has its own array. What works: All points have the same array: @ptnum == a; a can be read. Which doesn't work: All points have different arrays: @ptnum == b; b cannot be read. there is no result. probably because of different values. Unless you use setpointattrib(). - - - - - - - - I just remembered something else: if i use a maximum iteration with the function len() it seems to use only the points which store the arrays (in this case from i[]@pclouds). So not the value for all points. If I just enter the value by hand, all points go up. Is that normal? There is nothing of this in the function documentation. int len2 = len(i[]@pclouds); i@len2 = len2; for (int k = 0; k < len2 /* or 14 */; k++) { int l = i[]@pclouds[k]; i@l = l; @P.y = @P.y + .5; }
  11. facet and fuse by color

  12. Grouping the outer 4 points of a primitive

  13. facet and fuse by color

    Hi, whats the best way to fuse or facet all faces with the same color? thanks.
  14. Hi, whats the best way to group the outer 4 points of a primitive? I've tried this with bounding box but I don't know what to do. I want to select with pos. string grp = itoa(@primnum); vector bbmin = getbbox_min(0,grp); vector bbmax = getbbox_max(0,grp); vector bbsize = getbbox_size(0,grp); vector pos = set(bbmin.x, bbmin.y, bbmax.z); An other way is to use pcfind. But the setting with the radius is problematic. In my script I want to manipulate primitives. They can also be of different sizes and have different point arrangements on the inside. Therefore the pcfind radius should always be different Finally, I always want access to the outer 4 corners. However, I would be interested to know what is the best way to deal with this situation, to create these new surfaces. thanks.