|
|
http://www.sohcahtoa.net/videos/amazinggracemb.avi (5.77 MB DivX 6)
http://www.sohcahtoa.net/videos/amazinggracemb.m1v (7.62 MB MPEG1)
After just over 5 days of rendering, I've finally completed a new video,
presented in 60 fps with 10-sample motion blur for the extremely smooth
animation! I've also increased the video size to 512x384.
While at first glance, it may appear just like the last video, there are
many changes I've made:
-Banking has been smoothed out. If you look at the last video, you can
see changes in banking are very jerky, especially in corkscrews. This
was easily fixed by using a spline to interpolate between up vectors on
each bezier control point, rather than simple linear interpolation.
-Track ties no longer appear through the bottom of the spine rail. At
first, I thought this was a problem with bad transformation of the track
ties. Then I looked closer at the spine and noticed that the spine was
actually moving up and down relative to the running rails. The problem
was that I was rotating y around the vector defining the current
direction to find a position for the spine. Instead, I'm now using the
current up vector.
-Track that is very close to vertical still kinks, but its not
noticeable in this ride, with the exception of a single track tie
heading up one of the loops. I know how to fix it though, and will be
implementing that fix before the next post.
As far as implement different segment types (Stations, brakes, lifts,
ect.), I've written the code that will parse that data from the No
Limits track files, but I haven't figured out how I'm going to use that
data in POV-Ray. The problem is, different segment types have different
variables associated with them. For example, a segment with nothing on
it (Not a lift, brake, etc.) only has color data for it, while a brake
has deceleration, and if the brake has friction wheels, it'll have that
as well. I'm considering just creating arrays for each variable for
each segment. It'll be wasteful with memory, but it'll be the easiest
to implement.
For support structures, I've defined the variables in my program, but
haven't written the code that will parse the .nltrack file.
I have a HyperThreading CPU, and I'm considering writing a method of
splitting frames and running two POV-Ray instances. I'm just not quite
sure how to do it. Is there a way to tell POV-Ray to only render every
N frames?
-DJ
Post a reply to this message
|
|
|
|
Forgot to mention something...
This render is also flipped horizontally from the previous. POV-Ray and
No Limits define all the axes the same way, with the exception that No
Limits defines +Z to be south, while POV-Ray has +Z going North. This
causes the tracks to be mirrored over the Z axis. As a simple
workaround, I just mirror the outputted images horizontally.
-DJ
Post a reply to this message
|
|
|
|
DJ Wiza wrote:
> http://www.sohcahtoa.net/videos/amazinggracemb.avi (5.77 MB DivX 6)
> http://www.sohcahtoa.net/videos/amazinggracemb.m1v (7.62 MB MPEG1)
>
I used up my monthly bandwidth quota on my web host, so I removed the
files. The links are no longer valid. Good news is, a friend on IRC
has given me some space on his webhost. Here's some new links:
http://www.geekissues.org/sohcahtoa/amazinggracemb.avi (5.77 MB DivX 6)
http://www.geekissues.org/sohcahtoa/amazinggracemb.m1v (7.62 MB MPEG1)
-DJ
Post a reply to this message
|
|