Jump to content


  • Posts

  • Joined

  • Last visited

  • Days Won


davpe last won the day on February 14 2022

davpe had the most liked content!


Contact Methods

  • Website URL

Personal Information

  • Name
  • Location
    Prague, Czech Republic

Recent Profile Visitors

5,165 profile views

davpe's Achievements


Newbie (1/14)

  • First Post Rare
  • Collaborator Rare
  • Posting Machine Rare
  • Week One Done Rare
  • One Month Later Rare

Recent Badges



  1. redshift is a bit limited in this respect as it cannot use string attributes directly. one way how to do it is what Atom says, but with large amount of textures it would be quite hard to work with, as you need to remember what number is what texture, and connect large amount of nodes (one for each texture, which starts to become a problem if you have dozens or hundreds of textures). another way how to go about it is to use Stylesheet, which is much more powerful, but also more tricky to setup. Basically you can create a string attribute that contains name of an image file per primitive, and then read it in Stylesheet a apply it in render time. with mantra or karma, you can read string attributes directly in shader, which makes this much more simple and easy to setup.
  2. i think UV_layout might help you with that (it has a bunch of options for uv island alignment and distribution). depends on your exact case thou.
  3. to me, it looks like Redshift and Karma are just using different pyro fields to render alpha?
  4. hey, not sure about .ass format specifics, but for manipulating packed transforms i recommend this workflow: https://vfxbrain.wordpress.com/2020/07/09/how-to-re-apply-packed-transform/ not sure thou if that will fix the .ass file. Haven't used arnold for years now. cheers, D.
  5. Yes, you need to learn Python if you want to be Houdini TD/dev that is useful in production. Also take VEX as another language that is a must if you want to be called a Houdini TD. But VEX is yet a different topic. If you know nothing about Python at this point, I'd recommend you to take one of the general Python courses available at codecademy.com, or similar online learning source. Also read through official Python docs where you can find detailed information about specifics of the language - https://docs.python.org/3/ Personally, I very much liked https://www.tutorialspoint.com/python/index.htm - this is by no means a complete guide to Python, but you can quickly find the most commonly used functions and syntax. Very handy if you starting off and don't remember even the basic stuff yet. As for houdini specific tutorials, I just looked at random tutorials on youtube showing how to do this and that. Other than that, I would also humbly recommend reading through my own notes that I was making while learning: https://vfxbrain.wordpress.com/2016/03/15/python-in-houdini/ With the same breath, I'd like to encourage you to make your own notes, because you will be forgetting a LOT of things while learning, and it will save you a heaps of time being able to go back to your notes and just look up how did you do some specific thing last time. Also I have to mention I am not really a developer myself, and to be honest, my code would be probably described as shit by any skilled developer - I typically use Python to build simple tools for myself, that help me avoid doing the "same 10 clicks" over and over again, or to overcome manual tasks that are too tedious. Being a full fledged developer requires yet another level of skill in terms of how efficient and clean your code is, and Python alone will probably not be enough. Other than VEX that I already mentioned, you will soon find yourself immersed into various OS related topics, network topics, maybe C++ if you wanna go badass, and other things that I would'n even dare talking about Good luck
  6. what exactly do you need to know? just make selection by @name directly in Material SOP. Or make groups from the @name and then use those as a separator, if that's more comfortable for you.
  7. again, depends on your specific setup. But for example, "transform by attribute SOP", "transform pieces SOP", and "getpackedtransform" and "setpackedtransform" VEX functions are the good candidates to look at. also this article might come in handy: https://vfxbrain.wordpress.com/2020/07/09/how-to-re-apply-packed-transform/
  8. i think there is no out of the box solution for this as it is a very specific request. however, if you have packed prims, it should have it's transform matrix stored as intrinsic primitive (pos, rot, scale). you can then use a python script i suppose, to read individual packed transforms and write it into a text file with json syntax. If packed prim transform is not there in packed intrinsics (i.e. it's zero), it's been either discarded somehow in the prior processes, or haven't been generated at all. In that case you have to find a workflow that generates and retains this attribute for you. (not 100% sure if this is generated by "copy and transform SOP", but it's definitely generated by "copy to points SOP") this is of course just a rough workflow on how would I try to approach it. Detailed steps will vary depending on how you've built your scene, and how u wanna use the data next. cheers, D.
  9. depends on renderer - for instance Arnold and Redshift have something like a "fetch VOP" that allows you to reference another VOP from a different shader network. Not sure if Renderman has something alike but it seems like that's exactly what you are looking for.
  10. shame this functionality doesn't come as a node in Houdini out of the box. it would be really handy sometimes.
  11. hm that still is an odd behavior. why would missing lights make cryptomatte not work?
  12. that's right, Arnold doesn't support heaps of stuff in Houdini. with packed geo, it attempts to unpack it before rendering, which cancels out any benefits offered by it. On top of it, agents are kind of a special stuff tailored to be efficient with Mantra / Stylesheets. Stylesheets are neither fully supported by Arnold, if I'm not mistaken. In general, I can't recommend using Arnold in Houdini - it's a lot of pain all the time. We render crowds using Mantra as that still seems to be the best option with least amount of headache. In the future, we count on rendering crowds with Karma. cheers. D.
  13. but anyways, in wrangle you can always do: v@uv.y = @P.y; this will literally take position Y coordinate and replaces the uv Y coordinate by it. if thats what u want.
  14. well in that case that wouldn't be about simply locking it, as the building may be 100 units, but uv space operates in 0-1 range. so it depends a) do u want to keep it proportional? b.) do you want to fit it in the 0-1 range, or u dont mind if it goes across uv tiles? c) are u dealing with just a single asset, or u need to keep consistent scale across multiple buildings? d) are u modeling it in houdini too, or it comes from somewhere else?having things modeled in houdini would make things much easier as you can prepare things in advance in the modeling stage.
  15. aha i see. check the example file if that's what u want. if you needed a completely procedural approach, it would be slightly more complicated to setup, but definitely possible too. right now i just created a group "extrudeSide" on polyextrude2 SOP, and then UV_transform SOP to offset the selection. UV_Y_reply.hip
  • Create New...