Jump to content

Search the Community

Showing results for tags 'shader'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • General
    • Lounge/General chat
    • Education
    • Jobs
    • Marketplace
  • Houdini
    • General Houdini Questions
    • Effects
    • Modeling
    • Animation & Rigging
    • Lighting & Rendering
    • Compositing
    • Games
    • Tools (HDA's etc.)
  • Coders Corner
    • HDK : Houdini Development Kit
    • Scripting
    • Shaders
  • Art and Challenges
    • Finished Work
    • Work in Progress
    • VFX Challenge
    • Effects Challenge Archive
  • Systems and Other Applications
    • Other 3d Packages
    • Operating Systems
    • Hardware
    • Pipeline
  • od|force
    • Feedback, Suggestions, Bugs

Found 130 results

  1. Hi everyone! I've been stuck on a particular problem today. I've been using a simple voronoi in Houdini to fracture a rock, but I'd somehow like to bake a layered texture or vertex map so you can see the lines emanating from the shell of the model. I've attached a picture of some agate so you can get a better understanding. This is so I can export the alembic into C4D and apply different textures to these 'ridges' using the vertex map, or just a baked texture outright. I'd only need a couple of bands at the outer edges, not going all the way to the center I initially tried converting the rock before the fracture to a volume and baking a ridged texture using the depth from this, but I just can't seem to figure it out. I also tried copying the rock a couple of times, sizing it down a little, then used these copies to bake the vertex colour, but it still wouldn't budge! I'd be very helpful for any tips as it'd be great to get a procedural solution to this problem
  2. The help for "computenormal" (link below) reads: "However, when the VEX variables are changing with a high frequency (for example, a high frequency displacement map causing high frequency changes to the P variable) ... ". Since this mentions displacement, it suggests that "computenormal" (in a disp. shader) gives the normal to the displaced surface. It sounds too simple: to know this normal, the shader would need to know the partial derivatives of the disp. surface, i.e. for each shaded point, the shader would need to compute or "remember" two other shaded points. Is it really what's happening? https://www.sidefx.com/docs/houdini/vex/functions/computenormal.html
  3. say i have a ocean ,i need do some deform in the ocean surface shader , transform the space from current to object ,then i did some deform work ,then transform it back to current space ,give the new surface position to shading normal , the render have this prob , i think my way is wrong , someone who familiar about it pls help me . appreciate it . i did a simple hip file show this question , you can download it ,in the shader ,put a aanoise plus with object position ,you can switch it between normal and wrong . you can regenerate you ocean spectrum . thanks ! deformOcean.hip
  4. Hi, I've some experience with VEX in SOP land but I'm new to Mantra shading and I want to get better at writing vex shaders. What would be the modern way of doing that? In particular, I'm not entirely sure if I could simply write my code and hit compile (the way I would with OSL in RenderMan) without ever leaving Houdini or restarting the renderer for that matter. For instance, I managed to compile the following from a vfl (a modified sidefx example) into an HDA (.\vcc -l "%HOME%\houdini18.5\vex\hcartoon.hda" "%HOME%\houdini18.5\vex\hcartoon.vfl") and it's available under /SHOP/Digital Assets and it works. #include <shading.h> #pragma opname hcartoon #pragma oplabel "HCartoon" #pragma opicon SHOP_surface #pragma label colora "Color A" #pragma label colorb "Color B" #pragma hint colora color #pragma hint colorb color #pragma hint Cd hidden surface hcartoon( vector colora={0.2, 0.5, 0}; vector colorb={0, 0.2, 0.8}; vector Cd=1; ) { vector Cx; illuminance(P){ Cx = Cl; shadow(Cl); if (Cl == Cx){ Cf = colora; } else{ Cf = colorb; } } } However, isn't there a more straightforward way? Do I always have to compile to HDA and write all those pragmas? I was hoping for something like an attribute wrangler approach. So, there's the Surface Shader Builder (vopsurface) that I have to admit I don't quite get as far as writing code goes. Snippet? Inline? How about inputs and outputs in it? Surely not with pragmas in there, right? I tried with a snippet, got a compile error 'Invalid return type (surface)'. If anyone can help me with it, that'd be awesome! Thanks, Hristo
  5. Hello, For all my time in Houdini I have never shaded a lot. I however have played with pointVop quite bit, so I was surprised when I tried to make a noisy shader and I kept following the camera ? Let me explain what the scene is : - a grid, that has a principledshader - a rotating null, parenting a camera - 3 lights In the shader, I take the position of a Global Variable, plug it into a noise, and in the basecolor of the principledshader. Why is that, that when I render different frames (so the camera has moved), the noise stays the same. I can see the lights are not coming from the same angle, which is normal since the camera moved, but the noise is pixel for pixel displaying the same way. I fixed it by pluging a restpost between the Global Variable and the input of my noise, but I can't wrap my head around why I have to do this in the first place ? Normaly everything makes sense in Houdini but this doesn't. As I said I know my ways around Point Vops, so should I expect other different behaviors in the shader context ? shader_must_rest.hiplc
  6. Math Challenge Lens Shader

    Hello! I am struggling to get what I want from a lens shader. It is somehow a math challenge. Let's see if there is someone who can figure it out... Simple scenario: - Perspective camera looking towards a grid made of 4 points (corners). - I want the camera to render the grid taking each corner as a reference to fill the frame completely with the grid (not more or less). Details: - The grid should be able to rotate on 3 axes and the camera should keep framing it. (So aspect ratio won't do it, since it has some perspective). - I have managed to do it in one axis, but additional axes seem to start acting weird, the results are close but not enough. Since it is math it should be perfect! (I does not have to be foolproof, looking towards the Z direction always and not handling more than 180-degree rotations is ok). Code of my lens shader #include "math.h" #pragma opname lens_shader #pragma oplabel "Lens_shader" #pragma hint x hidden #pragma hint y hidden #pragma hint Time hidden #pragma hint dofx hidden #pragma hint dofy hidden #pragma hint aspect hidden #pragma hint P hidden #pragma hint I hidden cvex anamorphic_lens( //Inputs float x = 0; // X screen coordinate in the range -1 to 1 float y = 0; // Y screen coordinate in the range -1 to 1 float Time = 0; // Sample time float dofx = 0; // X depth of field sample value float dofy = 0; // Y depth of field sample value float aspect = 1; // Image aspect ratio (x/y) //Outputs export vector P = 0; // Ray origin in camera space export vector I = 0; // Ray direction in camera space export int valid = 1; // Whether the sample is valid for measuring //Grid corners converted to camera space vector corner0 = 0; vector corner3 = 0; ) { float xmin_bounds = corner0[0]; float xmax_bounds = corner3[0]; float ymin_bounds = corner0[1]; float ymax_bounds = corner3[1]; float zmin_bounds = corner0[2]; float zmax_bounds = corner3[2]; float new_x = fit(x, -1, 1, min(xmin_bounds, xmax_bounds), max(xmin_bounds, xmax_bounds)); float new_y = fit(y, -1, 1, min(ymin_bounds, ymax_bounds), max(ymin_bounds, ymax_bounds)); // Calculations Z axis in relation to X float offset = min(zmin_bounds, zmax_bounds); float relation_x = (max(zmin_bounds, zmax_bounds)-offset)/min(xmin_bounds, xmax_bounds); if(xmin_bounds > xmax_bounds){ relation_x *= -1; } float relation_y = (max(zmin_bounds, zmax_bounds)-offset)/min(ymin_bounds, ymax_bounds); if(ymin_bounds > ymax_bounds){ relation_y *= -1; } float z = (-relation_x * new_x) + (-relation_y * new_y) + offset; P = set(0, 0, 0); I = set(new_x, new_y, z);
  7. Hi all, First post on here on Odforce, hope someone can help me out. I've been using noises in the material network before to pipe them into parameters however; I got an unexpected result today. I've included a screenshot of the graph (just simple aaflownoise -> fit(noise,-0.5,0.5,0.25,0.35); -> roughness parameter) but got an extremely long and grainy render that was also a lot too light (the lightest frame I included). The other two frames are with roughness just set to 0.3 on the principled shader itself (The darker one has all other settings in the project exactly the same, the lighter one I bumped up the env light a bit). Feel like I'm missing something here. What's going on? Thanks in advance!
  8. Unreal Landscape Layer Issue

    Hey guys, I'm copying this post from Reddit to get more exposure. Since you guys are pros, maybe you'll know the answer: I'm having an issue with my landscape material. I've got an HDA pulling in a landscape with six layers. I've setup each layer as a material function so I can blend each function in a material based on their layer name. The problem is the material only works with three layers at a time. I can't do more. This is what it looks like with three layers as expected: Three layers with blend mode set to Opaque The shader fails when I plug in more than three. It shades in a tiny square on the terrain (not shown here), the rest of the terrain is the standard checkerboard: Six layers fail with blend type set to Opaque The only way to view all layers is to set Blend Type to Alpha Composite, however I completely lose my directional lighting: Six layers with blend type set to Alpha Composite (no directional lighting) It must be something with my layering weights.. I just can't figure this out for the life of me. Here are my layer settings: Layer Blend settings Let me know if you've run into this issue; I'm sure it's an easy fix. Thanks guys, Colby
  9. Hi, I'd like to visualize the optical effect of looking through a procedurally generated faceted glass object in the viewport. Karma works but I'm wondering if there is a faster option with OpenGL? I know it's easy to setup a refraction material in Unreal Engine, is there maybe a simple recipe in Houdini too?
  10. Multi Texturing

    Hi, I try to find the way to mix two diffuse based on point color and input that in the material diffuse. What's the best way. And, does someone know a good tutorial that cover the material and shader in Houdini ? thank you
  11. SBSAR Files for Redshift

    Hey party people, Has anyone developed a solid worklflow for getting .sbsar files to work with redshift inside houdini? Did some research on it, but it seems like I am not the only one struggling with it! Excited for your opinions Cheers, Felix
  12. Hi guys! I've been hitting this wall project after project. I am not good at scripting, but i was wondering if a script or a function could be done, or if it's a crazy idea. Well, usually when I recieve a model from a modeler, the guy has already assigned materials to the model, that houdini will read like shop_materialpath. Ok, now, if the model has 10 or 20 different shop_materialpath, it's really painful to check 1 by 1 the names and make 1 by 1 the shaders with the same name under the mat context. Do you think there is a workaround in scripting to make this process automatic? What is your workflow about this subject? Have a good day guys, if I get anything working I'll post it here, since I think it could be a really cool tool for everyone!
  13. Hi. I want to apply displacement to the area I want. For example, I want'dis' to be applied only to the red area as in the image. But I am not sure how to do it in the shader. Could you please let me know? Or maybe it's a reference address. The example file is also good. Thanks in advance.
  14. Setting the edge color

    I grouped the edges and colored them, but that's not what I want. I want the color to enter only the edge I want as shown in the picture 1. And I want to apply this to the shader and use it as a path. What should I do? Thank you.
  15. Hello, everyone! I have a question about shaders. Like in the image ... It should shine like a lava shader. For example ... I want to give a feeling of shining from the inside. It's like seeing inside a ghost's body. I don't know if the explanation is enough, but ... Could you tell me what keyword to search for? Is it just necessary to adjust the transparency of the mantra shader? Thank you.
  16. HI My extended ocean have very high specular and I couldn't reduce it or ged rid of it. My lighting rig is Sky Light light, rendering in Mantra using the default ocean surface shader. I tried everything i know the specular is still there, even when when lights are off , I have turn off the "reflect lights" option, the specular is gone but I end up with a flatten not nice look.. Attaching frame example Thank you!
  17. Hi I am absolutely new to houdini, so sorry for my ignorance. I'd like to give a mist-like shader to my particle animation which made me struggle whole day..... I dropped billowy smoke shader to spheres, and suddenly my particle object wasn't seen in the render view. How can I make it looks more realistic? I have attached my scene file. Help me.........(༎ຶ⌑༎ຶ) +) I think my particle effect is far from the perfect aerosol spray effect, so please feel free to give me some advice to make it better. I'm trying to make it as a volume with a VDB node, but not sure that it is the significant try. Thanks for reading. aerosol spray.hipnc
  18. hello there! I have a procedural noise in mat context and I want to assign the output of the noise to point attributes of the surface. how can I do that?
  19. Hi, How to Render infinite ocean using Redshift In mantra Shader Directly read spectra node, but what about Redshift how to spectra in Redshift
  20. Map Box Node Texture

    I've started playing around with the Mapbox Noce in the SideFX Labs Tool Box and its fantastic. But I've found a bit of a problem that I can't work out. Is there a way I can extract the texture or Cd into a compositing node then into a shader while keeping it all within Houdini with exporting anything? I'm using Houdini Apprentice anything I export out is limited resolution wise.
  21. Watercolor material

    Hey Im a few steps above "noob" title in Houdini but sill not so far off. I can do some stuff in modelling department and also some sims but not materials and i really need help with creating some for my uni project. I know how to do something like what i need in Substance Painter but its not an option for my procedural stuff Maybe merging similar textures into a material would be possible or something like it idk my main reference is a Disenchantment cartoon from Netflix (screenshot from this series is attached). Main action of my project is in a woodland area so currently im trying to figure out how to do similar thing also attached file with one of my waves of thought process but its not there yet https://sun9-59.userapi.com/c852016/v852016956/1d676a/Na-OBXwYpcE.jpg tower_v001_edit.hipnc
  22. Hi! In the mantra shader builder you can import the global variable vector "I", which is the direction of the eye to the rendered surface. Is there a way to reference this vector in the renderman material builder? using Renderman 23 in Houdini 18
  23. I've start test Houdini 18 and Arnold 6. the first test was simple splines rendering, 250.000 splines instanced 25 times. it loads a 140MB alembic file. rendered in 6 core Xeon CPU and Nvidia Quadro RTX 5000. (windows 10 pro) the startup for Arnold GPU is slow, it renders faster, so it seems but for clear up the final image it takes for forever or just dropped /crashed, hard to tell on the GPU. the CPU is quite fast but much slower then GPU if it ever would finish. (adaptive sampling was on) As soon as Arnold finishes rendering the scene, it stops and do not refresh any more on parameter changes. so far i am not impressed with the Arnold GPU rendering. here is the same scene Arnold CPU with only direct Lighting. (on my MacBook) some test with Arnold GPU. it performed much better with just direct lighting.
  24. Hi everyone, I have a little confuse about pc open. Normally we create a pc open need a current element "P" to be the query position. and then search the target file by radius. but what if i create pc open in cvex shader builder to work with vex volume procedural in Shop. where is the current P comes from? we still need a "P" to be the query position to do searching. (plz let me know if I'm wrong thx) if I connect pc open query pos to geo vop global parameter "P" then do the rest of part. although it still work but no idea how. and I don't know how to export the parameters to check on the spread sheet.
  25. SHOP - how to get wire boolean?

    Hi. Is any variable that stores information about wire existence in shader editor? I mean, I need the variable that is 1 when the texture is connected to base_color slot and 0 when there is not. What I'm trying to achieve is the arnold texture preview in the viewport. I created a texture tag in the parameter interface and it works but I want to the “use Texture” toggle be connected with the variable I mentioned. Also, is it possible to get the name of the node that is connected to the slot? In my case, the result would be “image1”. If not, is any different way? Thanks.
×