Particle's Custom RPG

PCRPG Development => Development => Topic started by: Lidge Farkley on December 12, 2003 11:25 pm CST

Title: Animating Building Textures...
Post by: Lidge Farkley on December 12, 2003 11:25 pm CST
Does any one know how to animate the building textures for Tribes?

In particular, how do they animate the panels in the different bases which  change their screen appearances, certain lights blinking, and bases changeing their decals based on which team controls a switch.

Any and all help is very appreciated.

Thank you.
Title:
Post by: Nitelthrome on December 14, 2003 08:40 pm CST
I'm still wanting to figure out how to animate objects (i.e, drawbridge)

I think it has something to do with lights though, since some lights blince in a pattern, and you can change the colors.
Title:
Post by: -eViL- on December 14, 2003 08:48 pm CST
the movement thing is simple nitel, but you are just too big of a damn noob to figure it out.

anways, back to the original thread question.  over the years i pondered that question as well, and my best guess is that its in the object creation in milkshape or otherwise, or that it is done using a series of skins on the same object just constantly changed and placed on.  i dunno, i can show you some code to do the second way, its not hard, just use like $Panel[%num] = %objId; and use the delete object and newObject functions to keep cycling the objects through.
Title:
Post by: UnderGod on December 15, 2003 12:33 am CST
All animations were done in an animation program like eViL stated.

If you were to spend enough time on it, you could do some pritty neat stuff the way eViL mentioned.
Title:
Post by: Particle on December 15, 2003 06:56 am CST
You can do object animation by moving its coords.  Such as:  make a draw bridge by having a script which moves that object x number of times (your frames so to speak), mainly playing with the angle and repositioning it to make it seem like the base isn't moving.
Title:
Post by: Nitelthrome on December 15, 2003 09:45 am CST
Quote from: "-eViL-"
the movement thing is simple nitel, but you are just too big of a damn noob to figure it out.


Yea, that must be it.
Title:
Post by: UnderGod on December 15, 2003 10:47 am CST
Part, thats exactly what eViL said =)
Title:
Post by: Lidge Farkley on December 15, 2003 02:28 pm CST
So, when the skin on the front emblem of the brodside base changes due to the control hierarchy being changed through a player from the other team claiming the objective, that is achieved by a Milkshape type program or through the new/delete scripting method?

I am just covering the bases with all of the questions.

My reasoning, is that large buildings that people make tend to have wondows in them, which causes a major fps drop (due the interior and exterior of the buildings being rendered) so if we were to put closed off window-skinned window glass in the holes where these large objects woudl normally be letting in outside light, then we could also animate the floor or wall tiles to reflect the daylight shining or glimmering through.  

This would allow for large buildings with the simulated effect of light shining in to them through windows.

Lets face it, looking out of a building that tall in trpg doesn't get you much in the way of game play importance, and this would enhance the inside of the buildings and the simulated lighting effects.

Of course, it'll be argued that trpg is past due for an update like this, but since people keep posting new buildings they made, we should probably not justy leave them by the wayside.  Besides, I am still interested in making structures, and the more variability we can have then the more options I would have for designing a structure either for tribes one or for tribes v.

Peace, and thank you for all of your help.
Title:
Post by: UnderGod on December 15, 2003 03:54 pm CST
The building itself doesn't have the logo on it. If you were to just spawn a building, it wouldn't have anything on it.

WHen it is assigned to a team, it paints the team's logo on it. From what I understand, when the texture was made, it was made to be skinned in a certain spot.. And the team logo is just a "skin" It has nothing to do with the model itself. Of course, I could be wrong. I however,  do know for a fact that it doesn't just create a new object to replace the other one when that happens. If it did, you could tell during gameplay.
Title:
Post by: -eViL- on December 15, 2003 05:41 pm CST
actually oz, it does matter what model.  the actual team skins pertain to a certain width and heighth so you can't just slap any old skin to it.  but yes, the actual model has nothing on it for colors and what not, it may have the markers on it for where to put certain skins...  i dunno, i never got to deep into this stuff, but i guess i may have to.. give me til after this week and sure... i hate exams!!! :(
Title:
Post by: Lidge Farkley on December 15, 2003 09:31 pm CST
Quote from: "UnderGod"
The building itself doesn't have the logo on it. If you were to just spawn a building, it wouldn't have anything on it.
Yeah... I know it doesn't, which is why I asked for a little clarification.  Thank you for the following;
Quote
WHen it is assigned to a team, it paints the team's logo on it. From what I understand, when the texture was made, it was made to be skinned in a certain spot.. And the team logo is just a "skin" It has nothing to do with the model itself. Of course, I could be wrong. I however,  do know for a fact that it doesn't just create a new object to replace the other one when that happens. If it did, you could tell during gameplay.
I agree about the game play part, as I have seen maps that change objects like that during game eplay, and have become stuck in floors because of such things. :-D

Also, I kind of thougt your idea with the "delegated to skin a particular part" made good sense, but I just could not figure out how they caused it to change based on the team hierarchy in the map editor.  (I understand that the team which controls the base switch will control the building, but I cannot seem to figure how it would change the decal/skin on the front part.  I am guessing that it's in a .mis some place... but I don't really know where to look, and all I know of tribes scripting I figured out myself [with no c know how at all] so I can easily say that I am pretty sure I would be lost as to the exactness of finding and using such a thing)

Quote
i dunno, i never got to deep into this stuff, but i guess i may have to.. give me til after this week and sure...

Excellent!  :-D  If we can crack this egg, it may open up a whole new era in texture manipulation to aid in simple effects with out rendering entire objects.  Water flowing, for example, could be done with the decal changing method, if we figure it out, in addition to the building window issue being some what solved (short of just putting balconies and s curves on all of the "window" areas to keep the insides seperate from the outside in rendering.)

Thank you both again for all of your reasoning and aid in this matter.
I look forward to the future of this experiment. :-)

**btw, goodluck with your exams!  I know thay're a pain some times... arg!
Title:
Post by: UnderGod on December 16, 2003 08:09 am CST
As eViL stated, it is probably in the creation of the file that tells it to paint the logo on that spot..
Title:
Post by: Silvanoshei on December 16, 2003 11:20 am CST
Quote from: "Lidge Farkley"
Water flowing, for example, could be done with the decal changing method, if we figure it out, in addition to the building window issue being some what solved (short of just putting balconies and s curves on all of the "window" areas to keep the insides seperate from the outside in rendering.)


OVER RENDER'D!!

My FPS hurts...
Title:
Post by: -eViL- on December 16, 2003 02:24 pm CST
Lidge, the decal changing is done via tribes.exe.  When something involving a team change happens, it runs the action through and sets the decals to accomplish the change correctly, which is why if you really watch, there is a millisecond lag time between the decals changing on a base due to a team ownership change.  the actual function can probably be found if you know assembly.  but for the most part, you can also do misc. things via scripts.vol scripts like the logo changing and what not.

Edit:
i have never personally worked in milkshake much, or any other application of that type for that matter, and was wondering if there is a way to set a marker on the object which can control a set object... ie - you set marker #9714 to control area [x1,y1] - [x2,y2] and make it so a function like refresh9714(%data) can be used to update it or something along these lines.... just an idea....
Title:
Post by: Lidge Farkley on December 16, 2003 02:35 pm CST
Quote from: "Silvanoshei"
Quote from: "Lidge Farkley"
Water flowing, for example, could be done with the decal changing method, if we figure it out, in addition to the building window issue being some what solved (short of just putting balconies and s curves on all of the "window" areas to keep the insides seperate from the outside in rendering.)

OVER RENDER'D!!

My FPS hurts...


SPam! !?

The purpose of this would be to elliminate the over-rendering that people do when they make a new object... and I think I explained that. :-p

Evil;
So you're saying that there is no real way to make the textures of a dis file change unless that specific part of a specific dis was allready defined to change with in the tibes.exe?  (I am probably misunderstanding)

Also... I considered that we could use a program like milkshape to fill in the inner layer of a floor or wall that has a visible "glimmer" effect, BUT, I am not sure how this may slow down the people entering a room with these effects.

I suppose I will need to get milkshape going and try it out... though I have no idea where to start!  hah.

Well, thank you again for all the help.
Title:
Post by: -eViL- on December 16, 2003 03:52 pm CST
you interpreted it right, i just don't know what i am thinking right now.... its a mix between calculus, physics, and tribes... lol.
Title:
Post by: Silvanoshei on December 16, 2003 04:30 pm CST
I fail to see how continuously changing skins can improve FPS.
Title:
Post by: -eViL- on December 16, 2003 05:38 pm CST
you aren't trying to make MASSIVE objects have skin changes, that would make your FPS end up in the malarkeyter....  most of the objects that do change with some frequency are small...
Title:
Post by: Silvanoshei on December 16, 2003 07:49 pm CST
He was talking about water flowing. That qualifies as massive in my books.
Title:
Post by: UnderGod on December 16, 2003 09:50 pm CST
Just to let you know, there is flowing water already in trpg..

It just isn't used because well.. It gives more of a fps drop than 5 old centuria

You can't change the way an object is in game. You can't change the skin on a object either. Realize that the buildings aren't changed at all when the ownership fo them is changed.. The "logo" isn't even connected to the object

If you are a good enough modeler/scripter, you can add objects all day and not require a download as long as the clients have the same texture files.

You don't want any animated object. I don't know if you were around a few versions back when the boat was first implimented. The boat actually used to be animated, It didn't travel like it does now. Almost no one could connect to a server from the lag this caused. The boat looked damn good too. I miss that boat.

and the skin on an object is different from what I believe you are thinking.. The model gets its look from the textures that skin it.. Textures are the skins in that case. And you can't modify textures in game.. It just isn't possible by any means.
Title:
Post by: Lidge Farkley on December 17, 2003 12:35 am CST
Quote from: "Silvanoshei"
He was talking about water flowing. That qualifies as massive in my books.
In respect to water, not those huge blue things in the "water" zone.  Water could be a skin on an object like the water fountain.  Small area, small ammount of change.  Water could be the skin on a water trough inside just changing back and fourth.  I was speaking in the sense of any water, not just the big blue squares people call water. ;-)

Quote
And you can't modify textures in game

hmm...
C:\TribesRPG6\unvoled\tribes1.11\entities_converted
light00.bmp
light01.bmp
light02.bmp
light03.bmp
light04.bmp
PULSE00.bmp - PULSE09.bmp
rlight00.bmp - rlight04.bmp
etc...

There are many groups of images which in game appear to be animated together on objects.  The broadside base is the most abundant example of these texture changes.

I know you cannot just add a new texture (everyone has to have a texture of that same name, and the same exact texture to display correctly) and expect it to work, but I have seen textures switch in the game, and that list above is a short group of just a few.  The thing I cannot figure out (past what evil has mentioned by way of tribes.exe) is how they are animated on to an object like that.

Thanks again for looking in to this. :-)
Title:
Post by: UnderGod on December 17, 2003 12:39 am CST
The animation you are talking about is done in creation of the object through 3dsmax or milkshape.

The textures aren't being animated.. It is just lighting effects.

And the panals are objects of their own.. Which rotate through a serioes of images.. the textures aren't modified.
Title:
Post by: Lidge Farkley on December 17, 2003 01:33 am CST
Quote
animation
= The creation of artificial moving images.
(dictionary.com)
I also did my senior project in high school (1999) about the history of animation.

Animation (in reference to this example) is the process by which things are made to appear moving when in fact they are just made up of several frames of individual pictures of an image in different states.

Quote
The animation you are talking about is done in creation of the object through 3dsmax or milkshape.
(not what I'm talking about.  I did talk about it, but I moved on to the alleged tribes.exe texture switching in my last post, illustrated by "groups of images which in game appear to be animated together on objects" which expresses that I know they are seperate images and I also understand that they create the effect of animation)

The textures aren't being animated.. It is just lighting effects.
(I know, but I think I was just misunderstood. doh!)

And the panals are objects of their own.. Which rotate through a serioes of images.. the textures aren't modified.

I did not know the panels were objects of their own (well, in some cases I did know, but not in the cases of the light00, rlight00, and PULSE00.)

Rotation through a series of images is a modification of the texture on the surface.  ie; image replacement via changing the texture to create animation.  I know I probably allready made this clear.... but I am covering my own ass just in case! :-)

Back to the key issue: ;-)
In order to create the animated effect of objects such as light00, rlight00, and PULSE00, I would need to have some sore of image changing script for the object which did not involve deletion and redrawing of the object, rather, it would say "image00 now change to image01"?

I have been looking through tribes scripts and I still cannot figure out where this texture changer would be.  Damnit!  hah. Well, I hope some one can come up with it! :-D

Peace.
Title:
Post by: UnderGod on December 17, 2003 09:08 am CST
You aren't understanding what I'm saying.


THe textures can't be modified. You can not change what a texture looks like in game. You can change how a texture effects an object, but you can NOT change what it looks like.

And those are different indifidual textures.. They aren't being midified one bit.
Title:
Post by: Lidge Farkley on December 17, 2003 02:48 pm CST
uhh... how am I not understanding?

You must think I am talking about applying some kind of in-game texture transforming algorithm to an individual texture file, but that is not what I have been saying.

What I have been saying is this;
There is a set of textures (PULSE00 set for example) and they are each applied to a surface of an object in a texture rotation at a given speed.  How can I do this to an object myself?

So, by this:
Quote
You can change how a texture effects an object, but you can NOT change what it looks like.

You mean that the object which has a texture on it that appears animated is actually just a string of objects (all with different textures) which rotate through a cycle, each linked to the last by the texture?
How would the broad side base change it's front logo then... by way of replacing the entire broad side base as evil suggested earlier?
Title:
Post by: -eViL- on December 17, 2003 03:56 pm CST
what ozzy is saying is that a texture cannot be modified through tribes (in game or out).  the textures are loaded into the game surroundings by tribes but they are not modified.  the textures give objects their look and implied feel, not vice versa.  you CAN modify an object attributes in game, but NOT textures.

ie-
%object.Name="Thing";
%object.Name="Blah";
there, i modified an object's attributes.
Title:
Post by: Lidge Farkley on December 18, 2003 07:46 pm CST
God damn it!  Now I am confused.

So..................  you are refering to the brushes in place which make up the faces of an object now?  (I understand that the object is made of its textures, which make the faces.)

I should wait more rather than ask too many damn questions shouldn't I?

heh.

Ahh well.
Title:
Post by: -eViL- on December 18, 2003 08:57 pm CST
w00 h00, look what i made :).

and the questions thing.... you can ask away... we just can't answer them, lol.  you might confuse yourself but you will probably confuse me with you so at least we will be on the same level :).

-------------------------------------------------------------------------
** For TI-89's **

Calculus()
Prgm

Local OneOne, OneTwo
Local TwoOne, TwoTwo, TwoThree, TwoFour
Local ThreeOne, ThreeTwo, ThreThre, ThreFour, ThreFive
Local FourOne, FourTwo, FourThre, FourFour
Local FiveOne, FiveTwo, FiveThre, FiveFour, FiveFive, FiveSix

Lbl I

ClrHome
ClrIO

Toolbar
 Title "Options"
 Item "Degrees", Deg
 Item "Radians", Rad
 Item "Quit", Ex

 Title "Chapter 1"
 Item "Verb. Lim", OneOne
 Item "Trap. Rule", OneTwo

 Title "Chapter 2"
 Item "Epsilon/Delta", TwoOne
 Item "Limit Props.", TwoTwo
 Item "Continuity", TwoThree
 Item "Limit Signs", TwoFour

 Title "Chapter 3"
 Item "Derivitive", ThreeOne
 Item "Diff. Quotes", ThreeTwo
 Item "Vel/Acc", ThreThre
 Item "Squeeze Theor.", ThreFour
 Item "Sinusoids", ThreFive

 Title "Chapter 4"
 Item "Prod./Quot.", FourOne
 Item "Deriv Facts 1", FourTwo
 Item "Deriv Facts 2", FourThre
 Item "Parametric dy", FourFour

 Title "Chapter 5"
 Item "Linearization", FiveOne
 Item "Differentials", FiveTwo
 Item "Reimann Sums", FiveThre
 Item "Mean Value", FiveFour
 Item "Rolle's Theor.", FiveFive
 Item "Simpsons Rule", FiveSix

 Title "Chapter 6"
 Item "Natural Logs", SixOne
 Item "General Rule", SixTwo
 Item "Define e", SixThree
 Item "Deriv. e", SixFour
 Item "Inverses", SixFive
 Item "Integrals", SixSix
EndTbar

Lbl Deg
setMode("Angle","Degree")
Disp "Calculator Set To Degree Mode."
Pause
Goto I

Lbl Rad
setMode("Angle","Radian")
Disp "Calculator Set To Radian Mode."
Pause
Goto I

Lbl Ex
ClrIO
ClrHome
Stop

Lbl OneOne
Disp "L is the limit of f(x)"
Disp "as x approaches c"
Disp "if and only if"
Disp "L is the one number you"
Disp "can keep f(x) arbitrarily"
Disp "clas to just by keeping"
Disp "x close enough to c"
Pause
Goto I

Lbl OneTwo
Disp "A = (1/2) (<>x) *"
Disp "(f(x[1])+2f(x[2])+.."
Disp "+2f(x[n-1])+f(x[n])"
Pause
Goto I

Lbl TwoOne
Disp "L+E < f(x) < L-E"
Disp "Solve For x"
Disp "x = Difference/Delta."
Pause
Goto I

Lbl TwoTwo
Disp "lim g(x)|x->c = L1"
Disp "lim h(x)|x->c = L2"
Disp "[g(x)+h(x)] = L1+L2"
Disp "[g(x)*h(x)] = L1*L2"
Disp "[g(x)/h(x)] = L1/L2"
Disp "[K*g(x)] = K*L1"
Pause
Goto I

Lbl TwoThree
Disp "1. f(c) exists"
Disp "2. lim f(x) exists"
Disp "   x->c"
Disp "3. lim f(x) = f(c)"
Disp "   x->c"
Pause
Goto I

Lbl TwoFour
Disp "lim f(x)  x->c from left."
Disp "x->c-          goin right."
Disp "lim f(x)  x->c from right."
Disp "x->c+          going left."
Pause
Goto I

Lbl ThreeOne
Disp "lim  f(x)-f(c)"
Disp "x->c    x-c"
Disp " ALSO"
Disp "lim  f(x+h)-f(x)"
Disp "h->0      h"
Pause
Goto I

Lbl ThreeTwo
Disp "For: f(x+h)-f(x)"
Disp "          h"
Disp "Back: f(x-h)-f(x)"
Disp "          h"
Disp "Sym: f(x-h)-f(x+h)"
Disp "         2h"
Pause
Goto I

Lbl ThreThre
Disp "Displacement: x"
Disp "Velocity: dx/dt = v"
Disp "Accel: dv/dt = a"
Disp "f(x) - f'(x) - f''(x)"
Pause
Goto I

Lbl ThreFour
Disp "1. g(x)<=h(x)|x near c"
Disp "2. lim g(x) = lim h(x)"
Disp "   x->c       x->c"
Disp "3. g(x)<=f(x)<=h(x)"
Disp "  for all x near c"
Pause
Goto I

Lbl ThreFive
Disp "y = C + A(cos(B(x-D)))"
Disp "1. Sinusoidal Axis: y=c"
Disp "2. Amplitude: |A|"
Disp "3. Period: 2pie/|B|"
Disp "4. Phase Displacement: D"
Pause
Goto I

Lbl FourOne
Disp "Product: y = uv"
Disp "y' = u'v + v'u"
Disp "Quotient y = u/v"
Disp "y' = (u'v - v'u)"
Disp "        v^2"
Pause
Goto I

Lbl FourTwo
Disp "tan'(x) = (sec(x))^2"
Disp "cot'(x) = -(csc(x))^2"
Disp "sec'(x) = sec(x)tan(x)"
Disp "csc'(x) = -csc(x)cot(x)"
Pause
Goto I

Lbl FourThre
Disp "sin-1(x) = 1/SQRT(1-x^2)"
Disp "tan-1(x) = 1/(1+x^2)"
Disp "sec-1(x) = 1/(|X|SQRT(x^2-1))"
Disp "co functions are negative."
Pause
Goto I

Lbl FourFour
Disp "dy = dy/dt"
Disp "dx = dx/dt"
Disp " -ALSO-"
Disp "dy = y'"
Disp "dx = x'"
Pause
Goto I

Lbl FiveOne
Disp "Linear function that best fits"
Disp "function f for values of x"
Disp "close to c is:"
Disp " "
Disp "y = f(c) + f'(c)(x-c)"
Disp "y = f(c) + f'(c)dx"
Pause
Goto I

Lbl FiveTwo
Disp "dx = deltax"
Disp "dy = f'(x)dx"
Pause
Goto I

Lbl FiveThre
Disp "Summation of:"
Disp "f(x[k])deltax[k]"
Pause
Goto I

Lbl FiveFour
Disp "1. f is differentiable"
Disp "     always on"
Disp "     interval (a,b)"
Disp "2. f is continuous"
Disp "     at a and b"
Disp "f'(c) = f(b) - f(a)"
Disp "           b - a"
Pause
Goto I

Lbl FiveFive
Disp "1. f is differentiable"
Disp "     always on"
Disp "     interval (a,b)"
Disp "2. f is continuous"
Disp "     at a and b"
Disp "3. f(a) = f(b) = 0"
Pause
Goto I

Lbl FiveSix
Disp "(1/3)deltax * (total)"
Disp "total= y[1]+4y[2]+2y[3]"
Disp "+4y[4]+2y[5]+...."
Disp "+2y[n-2]+4y[n-1]+y[n]"
Pause
Goto I

Lbl SixOne
Disp "(d/dx) ln(x) = 1/x"
Disp "integ (1/x) dx = ln|x| + c"
Disp "ln(1) = 0"
Pause
Goto I

Lbl SixTwo
Disp "b^a = c"
Disp "a = log c"
Disp "    log b"
Pause
Goto I

Lbl SixThree
Disp "e = lim ((1+n)^(1/n))"
Disp "    n->0"
Disp " ALSO"
Disp "e = lim ((1+(1/n))^n)"
Disp "    n->0"
Pause
Goto I

Lbl SixFour
Disp "f(x) = e^x"
Disp "f'(x) = e^x * x'"
Pause
Goto I

Lbl SixFive
Disp "exp(ln(x)) = x"
Disp "ln(exp(x)) = x"
Disp "e^ln(x) = x"
Disp "ln(e^x) = x"
Pause
Goto I

Lbl SixSix
Disp "Integrals"
Disp "tan(x)dx = ln|sec(x)|+C"
Disp "cot(x)dx = 1ln|csc(x)|+C"
Disp "sec(x)dx = ln|sec(x)+tan(x)|+C"
Disp "csc(x)dx = ln|csc(x)-cot(x)|+C"
Pause
Goto I

EndPrgm
Title:
Post by: Lidge Farkley on December 19, 2003 12:15 pm CST
Quote from: "-eViL-"
w00 h00, look what i made :).

and the questions thing.... you can ask away... we just can't answer them, lol.  you might confuse yourself but you will probably confuse me with you so at least we will be on the same level :lol:
Title:
Post by: UnderGod on December 19, 2003 01:03 pm CST
I hope you know that had nothing to do with tribes
Title:
Post by: Lidge Farkley on December 19, 2003 02:50 pm CST
Yeah, I know.
 :P
Title:
Post by: LastWish on December 22, 2003 09:11 am CST
Lidge is asking if he can find the way that those textures are being cycled and apply it to objects (therefore not adding any new textures but only using existing objects) therefore creating an animation effect.

UG and eViL are saying that you cannot change the textures because you would have to have anyone who joined the server to download these textures.

Is that what both of you are saying, because you guys kept refuting eachother's points with other unrelated points o_O
Title:
Post by: UnderGod on December 22, 2003 09:25 am CST
No that isn't what I was saying