Jump to content

linking COPS to SOPS network


freespark

Recommended Posts

Hello all,

I haven't been on in a while, but I have a small question I have a model of a cassette tape that I want to composite a looped sequence of frames to. I have my network setup in COPS but am having trouble and would like to know if it's a bug. Sorry if this isn't clear but, grrrrr!! O nevermind..

Nevins Duret

Link to comment
Share on other sites

Hello Steven,

So sorry about my frustration, this just seems like a really easy thing, and, as you know, there is a lot to set in COPS in order to do it. But, the concept is easy to grasp. Yes, I simply want to put the looped sequence onto the tape, but the tape is modeled and resembles film. And, I simply want to put the looped sequence on the film. Thanks in advance for taking the time out to even give this consideration. I know it's a bit vague. I wish I knew how to post my picture of it. Then it would make things a lot easier.

Nevins Duret

post-19-1030588702.jpg

Link to comment
Share on other sites

hey,

I THINK I get what you're saying. How long is your sequence of frames? You could create a texture that is basicly your 'film strip', so basicly, all your images next to each other, in one large image. You could then use this as a texture map on your geometry, and make your UVs so that it loops.

I can think of a bunch of possible ways to do this. I guess it depends on how you built the 'film' section of your tape. if there's individual grids for each 'frame', you you could assign textures based on primitive number...

Hope this got you going.

Jens

Link to comment
Share on other sites

Hello Jens,

thank you so much for the reply. I considered the primitive method but the thing is, as displayed in the picture of the cassette, I've built it keeping in mind that I am going to do it using the first method that you described. I have the network set up and everything but I am missing a couple of steps to basically wrap it up. I'm sorry but I don't even have the patience to sit and describe what t is I did in my COP network. I know this doesn't help you much or anyone else for that matter, but I have a lot to do. Again, thank you for the help.

Nevins

Link to comment
Share on other sites

Where must the picture be displayed on the cassette??! I mean, circle it out in a screenshot or so. I know it's tough to explain people something. But how else you think people will be able to ever help you that way?

Link to comment
Share on other sites

hello Calosus,

the pictures are going to go on the actual tape. I'm sorry I did not take my time out to explain everything that I did in COPs, it just honestly is a long process and I think I went wrong somewhere in my setup. I built the tape so that the pictures are going to go in the blank space that sort of resembles film. I circled it in red for you to see. Again thank you so much for the help and time.

Nevins Duret

post-19-1030819779.jpg

Link to comment
Share on other sites

Hey,

Well, glad we finally tracked the problem down. B)

As far as padding goes, I don't think there's any bugs. I think the best way to get padding to work is to use the padzero() expression. That is, if you're using an expression to loop certain frames.

Give that a shot. Should solve any issues you have. Remember to use ` (that's the key next to 1) around the expression, so that it evaluates it.

Cheers,

Jens

Link to comment
Share on other sites

But wait a second... You can link COPs to TOPs via MATs. From there Nevins could save the MAT he created as VEX (or RenderMan) shader. Since he told me he was still using 5.0. (Even then, 5.5 still supports that feature aswell :))

Link to comment
Share on other sites

OK,

Slight problem. I'm trying to solve my problem using another approach and I am glad you brought up the specifics in padding. I did use the padzero command with no success and, I did add my quotes. Here are the examples that I put into the texture map input field of a Vex Layered Surface:

mypic_`padzero(4,$F%100+1)`.tga

mypic_`padzero(4,floor($FF%100)+1`.tga

neither worked. Can someone please tell me what I am doing wrong? Thanks in advance.

Nevins Duret

Link to comment
Share on other sites

here's a handy little thing to do:

use the textports echo command to see what one of those would give you. so:

houdini -> echo mypic_`padzero(4,$F%100+1)`.tga

mypic_0002.tga

that about what you were looking for?

this one however:

houdini -> echo mypic_`padzero(4,floor($FF%100)+1`.tga

mypic_.tga

Expression error: Bracing error

and if that was just a typo:

houdini -> echo mypic_`padzero(4,floor($FF%100)+1)`.tga

mypic_0002.tga

so, they seem to work... compare your result with your filename, and make it work that way.

Cheers,

Jens

Link to comment
Share on other sites

  • 2 years later...

hey all

I think the biggest problem is, you can't link a cop network to a shader. you have to save out the image, then read them in with a shop.

as a matter of interest, with the new versions of houdini out, is there any way of linking cops to Shops ?

thanks in advance

all the best

aracid

Link to comment
Share on other sites

You can link a COP to a SHOP by adding the 'filename':

op:/img/img1/output_cop

The op: references a Houdini path, rather than a disk path (/img refers to COPs, img1 is the default copnet, output_cop is the name of the cop to fetch from).

You can also extend a short sequence using the Extend COP. For example, to loop a sequence of 10 frames (1-10), set 'Extend After' to 10000 (or some very high number) and change the 'Hold' to 'Cycle'.

I think the biggest problem you'd run into is that the op: syntax always fetches the image at the current time; so if you wanted a different image for each little frame on your cassette, this may not be a good solution.

Link to comment
Share on other sites

You could make an COP OTL to render a shop on a shader ball.

1) in the COP subnet, add a Render COP, a ROPNET with a mantra output driver, and an Object Network.

2) The Object network would contain a camera, one or two lights and one geo object.

3) In the Geo object, add a sphere w/ a UV Texture and Shader SOP attached, with the Shader SOP referencing a Shop (which would be linked as a parameter to the OTL).

4) In the mantra driver in the ROPNet, set the relative path to the camera in the Object network.

5) In the Render COP, set relative path to the mantra driver in the ROPNet

6) Create an OTL from the COP subnet containing everything, and link a parm from the Shader SOP's shader path parm.

And you should be good to go :) If you wanted to be fancy, you could modify the SOP network with a Switch SOP to switch between a sphere, torus, cylinder and a grid and link that as a menu parm in the OTL.

EDIT > Except that mantra doesn't seem to like rendering Object networks that aren't /obj :(

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...