To LUGNET HomepageTo LUGNET News HomepageTo LUGNET Guide Homepage
 Help on Searching
 
Post new message to lugnet.cadOpen lugnet.cad in your NNTP NewsreaderTo LUGNET News Traffic PageSign In (Members)
 CAD / 11120
     
   
Subject: 
Re: Automated minifig walking animation include file for Povray (Was: 8002 destroyer)
Newsgroups: 
lugnet.cad, lugnet.animation
Date: 
Wed, 18 Feb 2004 23:57:44 GMT
Viewed: 
9182 times
  

In lugnet.cad, Miguel Agullo wrote:
Hi Tore,

I gave your program a spin. I'd say we are not that far away in conceptual
terms.

"My aim is to let the program I'm currently working on take on the grunt work."

Is pretty much what I'm thinking. And the whole "march.exe" idea is right on
target too. By "automatic", I don't necessarily mean "hard-wired". I mean
"library-based", in the same sense as Ldraw. A user can either build the model
(a relatively "easy" task) and/or make the parts (much harder -in this case, the
animation presets files; in Ldraw's case the parts that make the library); but
not necessarily both.

I think I have the same idea as you have. The function (method?)
"<Minifig01>.MFWalk = 40" is unfortunately hard-coded inside the exe file. I
don't want it that way. I want it to be an external, easy-to-make module from a
library, and the next step is to figure out that modular system.


Couple of comments:

- L3P can take the main file and use the "clock" from povray to batch-process
the files (I know it's not ideal for your system, but at least you can create
loops to check how it looks).

I didn't know that. How does L3P use POV's "clock"? This is really interesting!
If from STEP - [CLEAR] meta-statements, all that remains is some way to tell L3P
to change camera position, angle and look-at point from the LDraw dat code!!!

And LPUB might make it even simpler to do.
When Kevin was writing the early versions of the program, I remember discussing
briefly with him its animation possibilities, which he seemed aware of and very
open to. But the main objective for the program is to create instruction steps,
so that is where he's put most of the effort into. (Thanks again, Kevin)


Sorry, I have never been very interested in publishing instructions, so I've
never given LPub a try.

   
         
   
Subject: 
L3P and Animation (Was: Automated minifig walking animation...)
Newsgroups: 
lugnet.cad, lugnet.animation
Date: 
Thu, 19 Feb 2004 02:26:15 GMT
Viewed: 
9300 times
  

In lugnet.cad, Tore Eriksson wrote:
In lugnet.cad, Miguel Agullo wrote:

- L3P can take the main file and use the "clock" from povray to batch-process
the files (I know it's not ideal for your system, but at least you can create
loops to check how it looks).

I didn't know that. How does L3P use POV's "clock"? This is really interesting!

Oh, almost there...
This is what L3P produces:
#declare _40_MyAn_dot_dat = union {
// "MyAn" - (MyAn)
// Name: @MyAn.dat
// Author: Tore Eriksson
// LDraw Animation Master File
// Frame 000
object { _40_myan000_dot_dat matrix <1,0,0,0,1,0,0,0,1,0,0,0> }
// STEP
#if (clock > 1)
// Frame 001
// CLEAR
object { _40_myan001_dot_dat matrix <1,0,0,0,1,0,0,0,1,0,0,0> }
#end
// STEP
#if (clock > 2)
// Frame 002
// CLEAR
object { _40_myan002_dot_dat matrix <1,0,0,0,1,0,0,0,1,0,0,0> }
#end
// STEP
#if (clock > 3)
// Frame 003
// CLEAR
object { _40_myan003_dot_dat matrix <1,0,0,0,1,0,0,0,1,0,0,0> }
#end
// STEP
#if (clock > 4)
#end // if clock
}


/////////////////////////////////////////////////////////////

And this is how I wish the output looked like:


#declare _40_MyAn_dot_dat = union {
// "MyAn" - (MyAn)
// Name: @MyAn.dat
// Author: Tore Eriksson
// LDraw Animation Master File
#if (clock = 0)
// Frame 000
object { _40_myan000_dot_dat matrix <1,0,0,0,1,0,0,0,1,0,0,0> }
// STEP
#end
#if (clock = 1)
// Frame 001
// CLEAR
object { _40_myan001_dot_dat matrix <1,0,0,0,1,0,0,0,1,0,0,0> }
#end
// STEP
#if (clock = 2)
// Frame 002
// CLEAR
object { _40_myan002_dot_dat matrix <1,0,0,0,1,0,0,0,1,0,0,0> }
#end
// STEP
#if (clock = 3)
// Frame 003
// CLEAR
object { _40_myan003_dot_dat matrix <1,0,0,0,1,0,0,0,1,0,0,0> }
#end
// STEP
}

/////////////////////////////////////////////////////////////


The only problem is that L3P superimposes the new frame on old ones instead of
showing just the new.

Lars, is there any way we can work this out??? :)))

   
         
     
Subject: 
Re: L3P and Animation (Was: Automated minifig walking animation...)
Newsgroups: 
lugnet.cad, lugnet.animation
Date: 
Thu, 19 Feb 2004 08:36:46 GMT
Viewed: 
9402 times
  

In lugnet.cad, Tore Eriksson wrote:

This is what L3P produces:

#if (clock > 1)
/////////////////////////////////////////////////////////////

And this is how I wish the output looked like:


#if (clock = 1)

The only problem is that L3P superimposes the new frame on old ones instead of
showing just the new.

Lars, is there any way we can work this out??? :)))

Yep, I've encountered this before and "solved" it the same way.


LPUB will render this correctly, however. Place a CLEAR statement at the
beginning of each step, then load the master file in LPUB and ask it to generate
instruction steps without parts or bill of materials. This will create a
sequence of files, each containing one step of your animation.

You can also use the buffer exchange matecommand with LPUB to your advantage
when doing animations. Although in that case it is highly recommended that you
set the "graying" of parts from previous steps off.

OK, gotta run now. But if this isn't clear enough, please let me know. In any
event, there are other LPUB experts in this forum.

   
         
   
Subject: 
Re: L3P and Animation (Was: Automated minifig walking animation...)
Newsgroups: 
lugnet.cad, lugnet.animation
Date: 
Thu, 19 Feb 2004 17:36:29 GMT
Viewed: 
9456 times
  

In a mail to me, Rui Martins wrote:
Forward this to Lugnet if you want, since my current E-mail is not setup to > be able to send to lugnet.

Why don't you just do a Search&Replace for the time beeing.

Like:
Search: "#if (clock > "
Replaceby: "#if (clock = "

This limits the replaces hopefully to only these specific situations.

See ya

Rui Martins


---------------------------------------------------

Yes, that is quite a good solution. It misses frame #000, but that is easily
done by hand. Or, anybody familiar with JavaScript or VBS could make your
suggested Search&Replace combined with
Search: "// Frame 000"
Replaceby: "#if (clock = 0)&13&10// Frame 000"
(Of course, with that language's syntax instead...)
Oh, and there needs to be an "#end" inserted before next "// STEP" statement.
Well, well...


/Tore

 

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