Copernicus: how to reproject (opposite of rasterize?)

   2117   9   2
User Avatar
Member
373 posts
Joined: June 2023
Offline
We can rasterize a geometry into a layer. But how to do the opposite?

For example, say I have a rasterized layer of a teapot. Then I edit the layer's pixels.

Then how could I reproject the edited result according the the camera used for rasterization and the teapot's UV, and generate a layer that can be used as the teapot's texture?
User Avatar
Member
172 posts
Joined: May 2021
Offline
Does the technique in time mark 1.36.00 here at "Houdini Hangout" help?

https://www.youtube.com/watch?v=hLa78ncQbTE&t=6154s [www.youtube.com]
PHENOM(enological) DESIGN;
Experimental phenomenology (study of experience) is a category of philosophy evidencing intentional variations of subjective human experiencing where both the independent and dependent variable are phenomenological. Lundh 2020
User Avatar
Member
8177 posts
Joined: Sept. 2011
Offline
This setup using a wrangle to 'reproject' is the best way I could figure out. I think there's probably a better way to transform world P to camera P that's built-in, but I don't know it. I'm using vex in this scene since it's what I know.

Attachments:
reproject_setup.png (1.9 MB)
flippy_cop_reproject.hip (614.2 KB)

User Avatar
Member
373 posts
Joined: June 2023
Offline
Thank you very much jsmack!

That being said, I feel it's really something should be built-in... there are so many nodes to bring data between 2D and 3D space, but not this?

By the way toNDC should be the built-in way to transfer world position to camera position. But somehow it returns clip space (?) not NDC so you need to divide by w yourself.
Edited by kodra - July 16, 2024 21:45:53
User Avatar
Member
373 posts
Joined: June 2023
Offline
PHENOMDESIGN
Does the technique in time mark 1.36.00 here at "Houdini Hangout" help?

https://www.youtube.com/watch?v=hLa78ncQbTE&t=6154s [www.youtube.com]

Well I watched for a few minutes from 1:36:00... and I didn't find he showing any technique. He just added some nodes and deleted them. Do you mean this?



But it doesn't look like a reprojection from camera space to texture space either.

Attachments:
Screenshot 2024-07-17 093935.jpg (192.7 KB)

User Avatar
Member
8177 posts
Joined: Sept. 2011
Offline
kodra
By the way toNDC should be the built-in way to transfer world position to camera position. But somehow it returns clip space (?) not NDC so you need to divide by w yourself.

toNDC was generating corrupt values for me, so I think it's not well defined here.

kodra
That being said, I feel it's really something should be built-in... there are so many nodes to bring data between 2D and 3D space, but not this?

I don't think there is a node, but I'm sure there is some openCL helper function for transforming the space.
User Avatar
Member
373 posts
Joined: June 2023
Offline
jsmack
kodra
By the way toNDC should be the built-in way to transfer world position to camera position. But somehow it returns clip space (?) not NDC so you need to divide by w yourself.

toNDC was generating corrupt values for me, so I think it's not well defined here.

I've reported toNDC() issue to SideFX and they told me it's fixed... I guess not? I didn't try it myself again.
Edited by kodra - July 16, 2024 22:24:17
User Avatar
Member
8177 posts
Joined: Sept. 2011
Offline
kodra
jsmack
kodra
By the way toNDC should be the built-in way to transfer world position to camera position. But somehow it returns clip space (?) not NDC so you need to divide by w yourself.

toNDC was generating corrupt values for me, so I think it's not well defined here.

I've reported toNDC() issue to SideFX and they told me it's fixed... I guess not? I didn't try it myself again.

It might be fixed in a newer version than I have installed.
Edited by jsmack - July 17, 2024 00:07:52
User Avatar
Member
373 posts
Joined: June 2023
Offline
Another thing is jsmack's solution retrieves camera information from SOP. Is it possible to somehow pipe the camera information into COP instead of referring to an SOP every time I need it?

https://www.sidefx.com/docs/houdini/nodes/cop/cameraimport.html [www.sidefx.com]

It seems like it's possible... but not sure how.
User Avatar
Member
172 posts
Joined: May 2021
Offline
kodra
But it doesn't look like a reprojection from camera space to texture space either.

Sorry I did not catch the camera space, I confused for view space. You can try the Slap Comp that brings in a Solaris AOV. I imagine you can get a texture space readout from there?

https://www.sidefx.com/docs/houdini/copernicus/slap_comp.html [www.sidefx.com]

I saw the technique in Rohani Dalvi's video here: Houdini 20.5 - toon shading using copernicus [www.youtube.com]

It is not in SOPs though.
PHENOM(enological) DESIGN;
Experimental phenomenology (study of experience) is a category of philosophy evidencing intentional variations of subjective human experiencing where both the independent and dependent variable are phenomenological. Lundh 2020
  • Quick Links