Train Smoke Pyro | Houdini | Redshift
BLOG 09 - CLASS CHECKPOINT 02
5/29/2024
I thickened the smoke to make it more realistic and lowered the vibrancy of the background. I wanted to keep some texture on the background so you could have a sense of how dense the smoke is.
I changed the camera angle and brought it closer so you could see more of the smoke than before. This deviates from the reference somewhat but is very much worth the deviation to show off more pyro.
BLOG 08 - CLASS CHECKPOINT 01
5/27/2024
I am decently happy with my smoke. Not a huge fan of the materials and I felt lost navigating how to use redshift’s volume material with extremely limited attribute control. I find it strange that there aren’t node inputs but I suppose I could use SOP level material overrides.
Due to the renderfarm being bogged down and a heavier project taking priority, I rendered locally with sample threshold set to 1 producing a noisy image unfortunately. I will submit it to the farm pronto.
BLOG 07 - Rigging cont, randomizing pop sources, randomizing velocities, randomizing wind
5/24/2024
After a lot of careful deliberation and study, rigging will have to wait. I will attempt to learn more for a resubmission or otherwise but I don’t want to spend any more working time on this. I have learned a lot and rigging is definitely powerful in houdini with many tools but I haven’t gotten an example of something as complex as my scene yet.
https://www.youtube.com/watch?v=57wd3mVoDkE&t=942s
https://www.youtube.com/watch?v=3stuQ-fU-j8
I added several randomization elements to my pyro which helped greatly vary my sim as well as enabling backwards interpolation on my pop source which adds more points in between frames bypassing the need for substeps completely.
Adding a randomization to the pyro wind using density as the seed worked greatly and caused my smoke to billow upwards randomly like the reference.
I replaced the background texture with brick which is more soothing on the eyes and feels right for a train. Although not nature, but stylistically similar. In the future if I wanted to expand the project I would use the tree generator and make a few houses as well as a camera angle up close to the wheels showing off mechanics and the steam on the bottom.
BLOG 06 - Rigging and notes
5/23/2024
Mostly studying and trialing various rigging methods. Nothing of serious note
INTRESTING NOTE:
while attempting to make my scene more procedural I found this out. Attempting to create an attribute for a group of points separated by a merge node upstream causes the attribute to reference the node of each specific point.
Here, I have 13 points identical in node setup but not in position or name, I attempted to back up and reference the name of the name node and instead of referencing that one node, it went ahead and referenced each point and created attributes off of the individual paths.
BLOG 05 - Learning constraints, gathering pivot points, planning ahead
5/21/2024
Beginning the constraint network starting at the wheel which will drive the rest of the mechanics. Observing a reference, I discovered one of the pieces is actually out of place. I may correct it but it also might not warrant a change.
Train mechanics reference: https://youtu.be/T1DlForsPP4?si=hrFUIVOg2UQnTHaO&t=145
Houdini rigging tutorial: https://www.youtube.com/watch?v=fKyy9v6v0vY
BLOG 05 - linking the puff to density, adding a second volume, train materials added, adding the moving parts for wheels
5/20/2024
My smoke is still low res for storage and working purposes. I am wondering if my light is causing the smoke to be way too bright. I liked my puff to the density in the pyro solver which seems to affect a large area causing smoke to appear from nowhere at times. I added this puff to the bottom of the train as well with some changed timings. I begin linking my old animation to the train wheels which might prove more challenging than I thought. I will attempt to cut corners when I can to preserve time. I wanted a render out last night but my drive heats up and throttles on large quantities of files taking over an hour which was not in the cards for me. I will be transferring them to the H drive in class or in free time.
The bottom smoke has banding which I can see in the flipbook. I could go for slowing the train down which would unfortunately, make my math for the plumes redundant. I should be flipbooking as often as possible in the future to prevent these errors.
I am pretty happy with my train materials. If i touch the materials on the train any further it is to add a single layer of roughness noise/bump. But as the camera position stands, it wouldn’t make sense. The background may be distracting for now. I wanted something with a texture in order to show the smoke better. Maybe something more naturalistic instead of industrial? or lighter colors?
Speaking of camera position, although it matches my reference pretty much 1 to 1 I am not a fan of how little space the train takes up. I might look into working from this camera angle and rendering it and then, if I have time, rendering it from an angle where the train takes up more space but still similar to this angle.
Settings for my two smoke stack pyros and the pyro network. The wrangle shows the equation for the puffing of the smoke.
Ive begun integrating my complex animation into the wheel mechanics. So far, I have made the rotation of the wheels driven by the train’s velocity now all is needed is to get point references for the mechanical parts. I know that there are easier ways to do the complex animation now so I will research if there’s an easier method.
Web references:
Topic on mechanical complex animations with example files: https://www.sidefx.com/forum/topic/77723/
Topic on constraint systems for mechanical rigs: https://forums.odforce.net/topic/50611-for-mechanical-animation-kinefx-or-classic-constraints/
BLOG 05 - More closely matching reference, camera and train move referenced small edits to smoke, small edits to train geometry
5/12/2024
General improvements to the smoke with matching to reference and editing the smoke stack a little bit to resemble the reference more. My next steps are billowing the smoke out more over time and dissipating it in a way in which it lingers afterwords more often but dissipates sooner. I also need to look into shading/lighting that gives me lighter smoke.
The underside smoke is still there but not visible very much. In some references, there is either a little or a lot of smoke from the underside and I may tone it down due to how much I want people to focus on the main smoke.
I am still using the first train in the original video as my reference but I researched more angles of the train and found an angle that shows off pyro that lingers from a really good angle with the exact train I am using called the Northern Central York 17 Steam Train. I think I need to push my camera in closer to the train as it does feel very small compared to the reference.
Specific:
https://www.youtube.com/watch?v=Nj3Xc8BdoyU&t=77s
I added drag to the pop source which greatly improved how the smoke travelled at the smoke stack vs how it travels after a short period of time.
Attempting to use age attribute to carry some simulations in the later lifespans of the pyro but I have not found out how to use age in the pyrosolver. Age will also be used to get the black initial state
I didn’t get to get a render out due to other projects and renderfarm issues but I got a flipbook instead and a still render. It is worth noting that the smoke does not flicker like that in the viewport if i get close to it.
BLOG 04 - Fixing collisions, improving smoke stack puffs, adding smoke on the wheels with collisions on the train, updated math and using desmos to view it
5/8/2024
Added smoke to the bottom and the train is used as a collider, fixed the collisions by raising the particle emitter. The smoke is black due to color space which will get fixed in final render.
I made improvements to the math of the smoke and i am using an attribute wrangle into the pyro rather than the popnet because it caused issues.
BLOG 03
5/6/2024 Deforming collisions and pyro
The train is set to move forward at an increasingly accellerated pace using a piece of the formula from before. This velocity is put into an attribute to then be referenced in the pyro source popnet to affect the force of a wind on a pulsing basis with controls for frequency and amp.
I also mapped density and pressure into divergence to get a really interesting pressure expansion effect. Unfortunately, the force is so great that the sim completely ignores my collision for whatever reason which I will have to figure out.
I did a mantra and a redshift render just to look at differences. I have not rendered in mantra before and after finding out that gpu rendering is not ideal for large scenes I think it would be helpful to learn mantra or karma at least once.
I am using a tube as the pyro collision but the pyro deletes itself when touching a deforming collider. There are many people talking about this issue on the internet but I haven’t found a good fix. This post looked promising but I couldn’t get it working today.
https://www.reddit.com/r/Houdini/comments/14ztb06/smoke_simulation_breaks_when_using_deforming/
BLOG 02
5/5/2024 Pyro Exploration
I attended a Pyro workshop and using that as a base I started testing the dry ice idea
I tested rendering with redshift with using the parameters from the pyro sim
I made the bouancy negative and added collisions with the floor to get the smoke to spread out more.
Although this exploration led me down the path of something with dry ice using the reference from below, I think I want to go with the train smoke.
I have already been thinking about how to achieve it specifically with the first train in my reference. I was testing in desmos on making the train spew smoke in a frequency relative to the train’s speed. I have not yet implemented this yet as I am not sure where to place this math but in theory it seems logical.
I found a train model on cgtrader by z-lengyel
https://www.cgtrader.com/free-3d-models/vehicle/train/mav-40-steam-locomotive-tank-engine
It is grouped well and houdini reads the groups in a way that would allow me to apply my procedural animation on the wheels easily.
I need to test more with making the smoke thicker and if i like the smoke stack for the train. I wanted a smoke stack that is wider so I can include more smoke.
Houdini references and tutorials
Houdini:
Tutorial Train Steam Smoke Advance in Houdini + English Sub
https://www.youtube.com/watch?v=guyi4j1YfXU
I will follow this one closely but I want to add my own spin to it with the math in desmos I showed
Houdini Tutorial | how to create large scale smoke in houdini | houdini tutorial vfx
https://www.youtube.com/watch?v=RU5Vn-ULDg8
Houdini Pyro Parameter Demonstrations
https://vimeo.com/344950741
BLOG 01
5/3/2024
Concepting
A collection of ideas I am still thinking about doing
Steam trains- https://www.youtube.com/watch?v=W77rC0IGAgE
I like the billowy smoke and am thinking about how to make it interact with colliders during the sym. There is a reference of the train going into a tunnel which looks really cool. I also have done a procedural animation with the wheels before that I can use as animation reference.
dry ice- https://www.youtube.com/watch?v=8Gj8dr6AsYg
liquid nitrogen- https://www.youtube.com/watch?v=MaxZwsqstFs&pp=ygUPbGlxdWlkIG5pdHJvZ2Vu
These are both very similar in where the smoke/mist spreads along the table.