To LUGNET HomepageTo LUGNET News HomepageTo LUGNET Guide Homepage
 Help on Searching
 
Post new message to lugnet.cad.rayOpen lugnet.cad.ray in your NNTP NewsreaderTo LUGNET News Traffic PageSign In (Members)
 CAD / Ray-Tracing / 998
997  |  999
Subject: 
LDA2001 and batch .pov file creation
Newsgroups: 
lugnet.cad.ray
Date: 
Sun, 30 Sep 2001 14:04:00 GMT
Viewed: 
843 times
  
I had almost done writing a long reply on this thread when a very aggressive
spyware/adware triggered a large number of popup-ads that eventually crashed
my system. I think it was one of Kazaa's nasty companion programs. No more
Kazaa for me!


This POV clock command (or statement/function/variable?) has lead me to
another crossroad in the LDA2001 project. I have two options:

1. Continue to create one POV-file for each frame.

2. Create one POV file and use the animation support in POV.

Option 1 is easier and it will not be too hard to create a batch file that
sends the camera and light arguments to L3P. Best thing however would be if
there was a way of having camera instructions inside the frame .DAT files
overriding the defaults as is for lights. Like:
  0 CAMERA POSITION -1500 -72 -400
  0 CAMERA LOOK_AT -1420 -120 -200
  0 CAMERA ANGLE 62
I know this has been discussed but I don't think something came out of it(?)
Also, is it possible to trick L3P to make an include statement in the
beginning of the output file?
Something like:
  0 IF POV
  0 #include "hills.pov"
  0 END POV
(Sorry, I haven't studied the ifpov syntax yet...)

If I turn to Option 2, I have to translate all animation instructions. With
linear movement or rotation, that would probably be no big problems, but
what about walking for example?
The MFWalk 40 is something like this:
      // Check for MFWalk
      // (sss is stringed version of an object's ID
      // (eg 'Minifig01')
      // GetRAM returns '<none>' if object has no MFWalk property
      if GetRAM(sss+'.MFWalk', '<none>') = '40' then
      begin
        MovePerFrame := StrToFloat(GetRAM(sss+'.MovePerFrame', '0'));
        FramesPerLoop := StrToFloat(GetRAM(sss+'.FramesPerLoop', '30'));
        FrameI := StrToInt(GetRAM(sss+'.FrameI', '0')) + 1;
        PutRAM(sss+'.FrameI', IntToStr(FrameI));
        Progress := FrameI / FramesPerLoop;
        if Progress > 0.25 then ii := 1 else ii := 0;
        if Progress > 0.75 then ii := 2;
        case ii of
          0: v := 2.7925 * Progress;
          1: v := 1.3963 - 2.7925 * Progress;
          2: v := -2.7925 + 2.7925 * Progress;
        end;
        // v is now angle (in radians) of left arm and right leg
        // v*-1 is angle of right arm and left leg
        // rest of code is snipped
      end;
      // END of Check for MFWalk
Now how do you do similar stuff in POV code?

To be able to use clock for camera movement, I'll have to be able to make
all animations in one POV-file, not only regular camera movement. Maybe even
make my own L3P clone? Oh dear...


/Tore




In lugnet.cad.ray, Michael Horvath writes:
I have found some utilities on the web that allow you to save your camera
positions by "flying" around, etc., but I haven't really found this useful
for LDraw (YET).

Also, I might make a post to the FST newsgroup to see if their flight
simulator can output a flight path to a text file.  This way, you could get
real weather effects and a flight model, too.   Hummmm...
Something to think about.
:)
-Mike


In lugnet.cad.ray, Fredrik Glöckner writes:
"Jake McKee" <sink@countersinkdg.com> writes:

Can anyone tell me how to create a series of .pov files all with a
slightly different name (i.e. file01.pov, file02.pov, etc.) that
has slightly different camera coordinates for each file? Basically
I am trying to create a series of rendered images that when viewed
in succession display as a "walk around" my model.


I would put it all in one file and use POV-Ray's animation facility to
achieve the various camera positions.  You can do something like this:

camera {
[...]
     location <0, -50, -100>
     look_at <0, -50, 0>
     rotate <0, 30*clock, 0>
}


This will cause the camera to rotate around the origin with a radious
of 100, with 30 degrees every time unit.  You can also set the camera
position directly using sin and cos, should you prefer that:

camera {
[...]
     location <100*cos(radians(30*clock)), -50, 100*sin(radians(30*clock))>
     look_at <0, -50, 0>
}




Fredrik



Message has 1 Reply:
  Re: LDA2001 and batch .pov file creation
 
Tore Eriksson wrote... (...) Yes, it has been discussed before, and No, nothing came out of it... I would prefer something like 0 L3P OPTIONS -cc-1500,-72,-400 -cla-1420,-120,-200 -ca62 (...) 0 FILE model.dat 0 L3P IFPOV 0 #include "hills.pov" 0 L3P (...) (23 years ago, 30-Sep-01, to lugnet.cad.ray)

Message is in Reply To:
  Re: Batch .pov file creation?
 
I have found some utilities on the web that allow you to save your camera positions by "flying" around, etc., but I haven't really found this useful for LDraw (YET). Also, I might make a post to the FST newsgroup to see if their flight simulator can (...) (23 years ago, 30-Sep-01, to lugnet.cad.ray)

12 Messages in This Thread:




Entire Thread on One Page:
Nested:  All | Brief | Compact | Dots
Linear:  All | Brief | Compact

This Message and its Replies on One Page:
Nested:  All | Brief | Compact | Dots
Linear:  All | Brief | Compact
    

Custom Search

©2005 LUGNET. All rights reserved. - hosted by steinbruch.info GbR