Read an Image Sequence for a VEX layered surface

   11957   17   2
User Avatar
Member
49 posts
Joined: June 2006
Offline
Maybe I'm being a doorknob-but I couldn't quite find the right solution in my searches here. I'd simply like to use an Image Sequence instead of a single image in my shopnet which uses a VEX layered surface.
So just have Texture Map load entire sequence instead of a single file.

Most softwares make this trivial with a flag in the browser.
I thought maybe if I load the first frame Houdini would read them all-but I don't think it is.

-maybe there is a more Houdiniesc way to do this…

-ral
User Avatar
Member
4262 posts
Joined: July 2005
Offline
Just use $F in your file name.

MyImage.0001.tif would be come MyImage.$F4.tif The $F becomes 0001 at frame 1 and 0002 at frame 2..and so on.
if(coffees<2,round(float),float)
User Avatar
Member
49 posts
Joined: June 2006
Offline
Works a treat.
-Thanks Wolfwood.
User Avatar
Member
49 posts
Joined: June 2006
Offline
Hmm-found some oddness with one sequence though.

Two sequences-both sequences load as single images too so its not corrupted.

anim_smoke5.1.pic works fine as anim_smoke5.$F.pic

-But
smoke_seq_01.001.pic fails with smoke_seq_01.$F3.pic



-am i still being a knob?

:?: -ral
User Avatar
Member
557 posts
Joined: July 2005
Offline
Try
smoke_seq_01.`$F3`.pic
(that's backticks around the $F3 expression)
User Avatar
Member
49 posts
Joined: June 2006
Offline
Hmm-Thanks Craig.
But that didn't seem to work either.

Any other ideas besides renameing the sequence?

-ral
User Avatar
Member
4140 posts
Joined: July 2005
Offline
What version you using? Works fine here, no backticks, on 8.0.613/Linux.

Btw, this brings up an ongoing RFE(or fix, as I prefer to think of it) - all file requestors throughout Houdini should behave the same - and if you use one in a SHOP for an image file, it doesn't automatically parse this sort of sequence(the filter sequence button is disabled), whereas if you're in COPs it does.

Cheers,

J.C.
John Coldrick
User Avatar
Member
49 posts
Joined: June 2006
Offline
Yup mines older-and on windows (XP) as well-8.0.474.
I was thinking it was because i had an unmounted drive on the network.
But thats not the case.

More info-I guess i have a bug (in 474).
Different sequences seem to be ok-while others are broken-from here it seems to be related to if the sequence name itself -like Houdini perceives two types of padding in the same file name?

i.e. smoke_seq_01.001.pic
fails-as does
fire_anim_burst3B.0001.pic

but
Flames_Sprites_00001.pic
anim_smoke5.1.pic
Are just fine.

-so you think its fixed in a newer build then?

-ral
User Avatar
Member
4140 posts
Joined: July 2005
Offline
i seem to recall there was a fix in the sequence parsing some time ago, it's certainly possible it was after your release. I'd update anyway, quite a lot of fixes since then.

Cheers,

J.C.
John Coldrick
User Avatar
Member
1631 posts
Joined: July 2005
Offline
A total stab in the dark here.

Are there spaces in the pathname? For example
c:\textures for houdini\smoke_seq_01.001.pic

If there are, please remove the spaces in the directory name.

Also, are they Quicktime/Apple .pic files? If they are Quicktime/Apple .pic files, Houdini does not read them.

Cheers!
steven
User Avatar
Member
49 posts
Joined: June 2006
Offline
Thanks J.C.
Could it be a problem on Windows only?
I've just now tried my problematic sequences in build 625 (windows)
and I seem to have the same behavior still.

Should i mail a link to this issue on the 8.1 forum?

-ral
User Avatar
Member
4140 posts
Joined: July 2005
Offline
Naw, they read all the posts. Just to clarify, though, when you say it doesn't work, you mean you can select a single picture, hit render, it's fine, but you select as a sequence(or manually type in the above), ensure you're on the correct frame(important!), hit render and the map doesn't render in the image?

Also, just to eliminate human error, I'd read the sequence in the compositor first, verify that you can read them fine, then copy and paste the sequence, as generated by Houdini, from the File COP and paste it into the shader string in question. While it's in the realm of possibility that there's something busted on Windows but not on Linux, it's starting to look more and more as good ol' human error.

Cheers,

J.C.
John Coldrick
User Avatar
Member
49 posts
Joined: June 2006
Offline
Each of these sequences is in its own folder-but all the folders are at the same location on our content server. So I browse up a folder and down into the next one and select the first image in the list. Then -depending on padding- i swap the frame number
for $F.

like so
smoke_seq_01.001.pic
becomes
smoke_seq_01.$F3.pic

When I do load a sequence that works I see the change straight away in SHOPS . Otherwise all I see is the Shader Surface (when it fails).
And its always the same sequences that fail too-not like a random refresh issue. And for the record-the bad texture link isn't rendering either.

BTW all the folders at this location have underscores in the names (not spaces) so thats not the issue either.

-thanks for the ideas-but its still a mystery.
-ral
User Avatar
Member
4140 posts
Joined: July 2005
Offline
I'd still go back to my suggestion about getting out of shader world altogether and verify you can read the files in the compositor.

Cheers,

J.C.
John Coldrick
User Avatar
Member
49 posts
Joined: June 2006
Offline
For the record CHOPS load these ‘funky’ image sequences just fine.
In fact -in a more user friendly way- this browser anticipates these as sequences and uses the approriate expression for each automatically.

So it seems to point to a bug Texture Map in VEX Layered surface and its browser.

Frankly a single standard browser that handles both scenarios everywhere image files can load would seem to be my order of the day.
Why do we want slightly different browsers-one more limited for this exercise than another in different parts of the software?

-ral
User Avatar
Member
4140 posts
Joined: July 2005
Offline
You're referencing what I had mentioned before, which is that the browser works one way in COPs, another in a SHOP image browser. It's just the same for me, however while wrong, it's more cosmetic than anything. I get the same results as you, but I'm still able to copy/paste the COPs *text string* of the result into the SHOP field and it works fine(again, if you're on the correct frame - $F must match an existing image). I'd try that at least once. I'm still leaning towards everything working but there's some stage you're doing that's introducing error.

Cheers,

J.C.

I just ran this on Windows, and it's working fine. I think you're getting confused that the file requestor isn't acting the same. The VEX shader reads it fine. You know that just having an errant space in the requestor can muss things up, right?
John Coldrick
User Avatar
Member
153 posts
Joined: July 2005
Offline
When you are in a shader, I found the best way is to use the expression padzero.

Instead of these:
smoke_seq_01.001.pic fails
smoke_seq_01.$F3.pic

try:

smoke_seq_01.`padzero(3,$F)`.pic

I think will do it.

User Avatar
Member
49 posts
Joined: June 2006
Offline
Today we are cooking with gas-but I'm scratching my head too. Now both these work.
smoke_seq_01.`padzero(3,$F)`.pic
smoke_seq_01.$F3.pic


I am pretty sure I was at the correct frame when having trouble
and I am pretty sure extra spaces weren't a factor either. But
since computers are never wrong I'll assume I was a door knob anyway.

chalk it up to newbieness.

Thanks everyone!
ral
  • Quick Links