Dead thread that once contained useful information.
Moderator: Moderators
Dead thread that once contained useful information.
I'm taking all this down. Spring's community has proven that it does not deserve my help.
Last edited by Argh on 21 Aug 2006, 04:51, edited 3 times in total.
Here's the thing. The texture isn't what needs to be flipped, it's the model. Currently Spring inverts models on the X axis... so...
A B
A B
A B
A B
(viewing from the top) comes out:
B A
B A
B A
B A
Anyway, I guess they're fixing this or something... I reported it months back and I think I got a response from devs...
Also, I'm betting that the parts you're talking about don't exist on the model. You've gotta set up a hierarchy, and only objects which are liked to the base object will be exported.
Oh, also, if your units come out being completely scaled-off in one direction, you've gotta reset the scale and transform.
A B
A B
A B
A B
(viewing from the top) comes out:
B A
B A
B A
B A
Anyway, I guess they're fixing this or something... I reported it months back and I think I got a response from devs...
Also, I'm betting that the parts you're talking about don't exist on the model. You've gotta set up a hierarchy, and only objects which are liked to the base object will be exported.
Oh, also, if your units come out being completely scaled-off in one direction, you've gotta reset the scale and transform.
hm...
upspring is a box full of surprises.
seems it... forget the texture paths..
textures must be in the same path as the saved file or it will forget were it put them
thinking it again
maybe it never had path info, as s3o are supposed to be itnterpreted by spring that will look only in the known places?... unittextures...
got a tutorial script copy pasted over your unit and worked fine..
well almost.. it fires but shots himself, and has no texture..
ther IS the textures in unittextures folder in the hpi i made...
i could be the dds compression, what compresion was supported again?
.. it was the dds.. duh.. what dds.. will test different saving options...
looks fine with the targa.
the gun scpript is still wrong, but fires :)
ah! its the 3d sphere size!.. lemme check....
hm
couldnt get the turret or the dds to work.
the uv texture is displayed fine in upspring, but its messed in game..
oops.. this is what upspring thinks the rigth uv map is.
ups-idown...
how many turns are that?
hit: when it looks fine in upspring, mirror once more in x.
here, what that uvmap yields in game.
on modifing 3dos in upspring, if you scale or move (not usre) objects, the units that you move such object, are completelly not the same that same transformation shows in 3dobuilder, like measure units in upspring are overmultiplied... er...
like 1 in 3dobuilder is like 1.5 in upspring. :/
also loaded a 3do and saved as s3o.. no luck all the model was black and .. .. turned completelly...
as for turrets, never got them to work, even tested a side turret.
AimPrimary part was tested this way also.
both with front and rigth1 turr.
the turret doesnt move, the shot comes from like inside the unit.
sorry if all this is known issue, i just figured it myselve and have not read much the forums on it.
upspring is a box full of surprises.
seems it... forget the texture paths..
textures must be in the same path as the saved file or it will forget were it put them
thinking it again
maybe it never had path info, as s3o are supposed to be itnterpreted by spring that will look only in the known places?... unittextures...
got a tutorial script copy pasted over your unit and worked fine..
well almost.. it fires but shots himself, and has no texture..
ther IS the textures in unittextures folder in the hpi i made...
i could be the dds compression, what compresion was supported again?
.. it was the dds.. duh.. what dds.. will test different saving options...
looks fine with the targa.
the gun scpript is still wrong, but fires :)
ah! its the 3d sphere size!.. lemme check....
hm
couldnt get the turret or the dds to work.
the uv texture is displayed fine in upspring, but its messed in game..
oops.. this is what upspring thinks the rigth uv map is.
ups-idown...
how many turns are that?
hit: when it looks fine in upspring, mirror once more in x.
here, what that uvmap yields in game.
on modifing 3dos in upspring, if you scale or move (not usre) objects, the units that you move such object, are completelly not the same that same transformation shows in 3dobuilder, like measure units in upspring are overmultiplied... er...
like 1 in 3dobuilder is like 1.5 in upspring. :/
also loaded a 3do and saved as s3o.. no luck all the model was black and .. .. turned completelly...
as for turrets, never got them to work, even tested a side turret.
Code: Select all
// script generated by Marcosoft LazyScripter
// by Marco for Quantum Design - www.annihilated.com/quantum
piece Base, Body, FrontTurret, FrontTurretFlare, RightTurret1, RightTurret1Flare, RightTurret2, RightTurret2Flare, RearTurret, RearTurretFlare, LeftTurret1, LeftTurret1Flare, LeftTurret2, LeftTurret2Flare;
static-var restore_delay;
#define SIG_AIM1 2
#define SMOKEPIECE1 base
#include "smokeunit.h"
#include "exptype.h"
#include "rockunit.h"
#include "hitweap.h"
Create()
{
restore_delay = 2000;
hide RightTurret1Flare;
start-script SmokeUnit();
}
SetMaxReloadTime(time)
{
restore_delay = time * 2;
}
RestoreAfterDelay()
{
sleep restore_delay;
turn RightTurret1 to y-axis <0> speed <40.0>;
return 0;
}
SweetSpot (piecenum)
{
piecenum = RightTurret1Flare;
}
QueryPrimary (piecenum)
{
piecenum = RightTurret1Flare;
}
AimFromPrimary (piecenum)
{
piecenum = RightTurret1;
}
AimPrimary(heading, pitch)
{
signal SIG_AIM1;
set-signal-mask SIG_AIM1;
turn RightTurret1 to y-axis heading speed <40>;
turn RightTurret1 to x-axis pitch speed <40>;
wait-for-turn RightTurret1 around y-axis;
wait-for-turn RightTurret1 around x-axis;
start-script RestoreAfterDelay();
return(TRUE);
}
FirePrimary()
{
show RightTurret1Flare;
move RightTurret1 to z-axis [-1] speed [300];
sleep 150;
hide RightTurret1Flare;
move RightTurret1 to z-axis [0] speed [300];
return(0);
}
Killed(severity, corpsetype)
{
if (severity <= 25)
{
corpsetype = 1;
explode Base type BITMAPONLY | BITMAP1;
explode Body type BITMAPONLY | BITMAP1;
explode FrontTurret type BITMAPONLY | BITMAP1;
explode FrontTurretFlare type BITMAPONLY | BITMAP1;
explode RightTurret1 type BITMAPONLY | BITMAP1;
explode RightTurret1Flare type BITMAPONLY | BITMAP1;
explode RightTurret2 type BITMAPONLY | BITMAP1;
explode RightTurret2Flare type BITMAPONLY | BITMAP1;
explode RearTurret type BITMAPONLY | BITMAP1;
explode RearTurretFlare type BITMAPONLY | BITMAP1;
explode LeftTurret1 type BITMAPONLY | BITMAP1;
explode LeftTurret1Flare type BITMAPONLY | BITMAP1;
explode LeftTurret2 type BITMAPONLY | BITMAP1;
explode LeftTurret2Flare type BITMAPONLY | BITMAP1;
return(0);
}
if (severity <= 50)
{
corpsetype = 2;
explode Base type SHATTER | BITMAP4;
explode Body type SHATTER | BITMAP4;
explode FrontTurret type SHATTER | BITMAP4;
explode FrontTurretFlare type SHATTER | BITMAP4;
explode RightTurret1 type SHATTER | BITMAP4;
explode RightTurret1Flare type SHATTER | BITMAP4;
explode RightTurret2 type SHATTER | BITMAP4;
explode RightTurret2Flare type SHATTER | BITMAP4;
explode RearTurret type SHATTER | BITMAP4;
explode RearTurretFlare type SHATTER | BITMAP4;
explode LeftTurret1 type SHATTER | BITMAP4;
explode LeftTurret1Flare type SHATTER | BITMAP4;
explode LeftTurret2 type SHATTER | BITMAP4;
explode LeftTurret2Flare type SHATTER | BITMAP4;
return(0);
}
if (severity <= 99)
{
corpsetype = 3;
explode Base type FALL | SMOKE | FIRE | EXPLODE_ON_HIT | BITMAP2;
explode Body type FALL | SMOKE | FIRE | EXPLODE_ON_HIT | BITMAP2;
explode FrontTurret type FALL | SMOKE | FIRE | EXPLODE_ON_HIT | BITMAP2;
explode FrontTurretFlare type FALL | SMOKE | FIRE | EXPLODE_ON_HIT | BITMAP2;
explode RightTurret1 type FALL | SMOKE | FIRE | EXPLODE_ON_HIT | BITMAP2;
explode RightTurret1Flare type FALL | SMOKE | FIRE | EXPLODE_ON_HIT | BITMAP2;
explode RightTurret2 type FALL | SMOKE | FIRE | EXPLODE_ON_HIT | BITMAP2;
explode RightTurret2Flare type FALL | SMOKE | FIRE | EXPLODE_ON_HIT | BITMAP2;
explode RearTurret type FALL | SMOKE | FIRE | EXPLODE_ON_HIT | BITMAP2;
explode RearTurretFlare type FALL | SMOKE | FIRE | EXPLODE_ON_HIT | BITMAP2;
explode LeftTurret1 type FALL | SMOKE | FIRE | EXPLODE_ON_HIT | BITMAP2;
explode LeftTurret1Flare type FALL | SMOKE | FIRE | EXPLODE_ON_HIT | BITMAP2;
explode LeftTurret2 type FALL | SMOKE | FIRE | EXPLODE_ON_HIT | BITMAP2;
explode LeftTurret2Flare type FALL | SMOKE | FIRE | EXPLODE_ON_HIT | BITMAP2;
return(0);
}
corpsetype = 3;
explode Base type FALL | SMOKE | FIRE | EXPLODE_ON_HIT | BITMAP2;
explode Body type FALL | SMOKE | FIRE | EXPLODE_ON_HIT | BITMAP2;
explode FrontTurret type FALL | SMOKE | FIRE | EXPLODE_ON_HIT | BITMAP2;
explode FrontTurretFlare type FALL | SMOKE | FIRE | EXPLODE_ON_HIT | BITMAP2;
explode RightTurret1 type FALL | SMOKE | FIRE | EXPLODE_ON_HIT | BITMAP2;
explode RightTurret1Flare type FALL | SMOKE | FIRE | EXPLODE_ON_HIT | BITMAP2;
explode RightTurret2 type FALL | SMOKE | FIRE | EXPLODE_ON_HIT | BITMAP2;
explode RightTurret2Flare type FALL | SMOKE | FIRE | EXPLODE_ON_HIT | BITMAP2;
explode RearTurret type FALL | SMOKE | FIRE | EXPLODE_ON_HIT | BITMAP2;
explode RearTurretFlare type FALL | SMOKE | FIRE | EXPLODE_ON_HIT | BITMAP2;
explode LeftTurret1 type FALL | SMOKE | FIRE | EXPLODE_ON_HIT | BITMAP2;
explode LeftTurret1Flare type FALL | SMOKE | FIRE | EXPLODE_ON_HIT | BITMAP2;
explode LeftTurret2 type FALL | SMOKE | FIRE | EXPLODE_ON_HIT | BITMAP2;
explode LeftTurret2Flare type FALL | SMOKE | FIRE | EXPLODE_ON_HIT | BITMAP2;
return(0);
}
Code: Select all
AimPrimary(heading, pitch)
{
signal SIG_AIM1;
set-signal-mask SIG_AIM1;
turn RightTurret1 to y-axis heading speed <40>;
// turn RightTurret1 to x-axis pitch speed <40>;
wait-for-turn RightTurret1 around y-axis;
// wait-for-turn RightTurret1 around x-axis;
start-script RestoreAfterDelay();
return(TRUE);
}
the turret doesnt move, the shot comes from like inside the unit.
sorry if all this is known issue, i just figured it myselve and have not read much the forums on it.
If you send me the model I can check it out...
Upspring internally can store much more piece information than s3o or 3do can. It stores rotation,scaling and translation info for every piece, and these are applied to the geometry when the model is saved. I'm not sure how this doesn't work for certain people... it works for me probably because I know what it does.
You can manually apply the these transformation values (rotation,scale,translation) to the model using the "Apply Transform" button (That's what I called it IIRC)
Maybe that might solve the issues with upspring distances/units seeming different than 3do builder distances/units.
Upspring internally can store much more piece information than s3o or 3do can. It stores rotation,scaling and translation info for every piece, and these are applied to the geometry when the model is saved. I'm not sure how this doesn't work for certain people... it works for me probably because I know what it does.
You can manually apply the these transformation values (rotation,scale,translation) to the model using the "Apply Transform" button (That's what I called it IIRC)
Maybe that might solve the issues with upspring distances/units seeming different than 3do builder distances/units.
What i did was rotate a piece and move it.
the model is the tutank.3do in madta scripting tutorial, here.
once saved and loaded again, the barrel3, has not the same shape or position as after the transformation.
Here is the model once saved, and screens of after (ups1) before (ups2).
if something is missing or you need more info, let me know.
Also, im having invalid piece number error in the smasher script (didnt nottice yesterday, was using F5).
will look at it and post later.
the model is the tutank.3do in madta scripting tutorial, here.
once saved and loaded again, the barrel3, has not the same shape or position as after the transformation.
Here is the model once saved, and screens of after (ups1) before (ups2).
if something is missing or you need more info, let me know.
Also, im having invalid piece number error in the smasher script (didnt nottice yesterday, was using F5).
will look at it and post later.
Cut/Copy/Paste allows you to do this.it'd be nice if I could move objects up/down the parent/child tree
The full S3O shading is very occasionally failing with me for some reason, resulting in black textures... apparently it's always failing with everyone else. I'll rewrite the shaders for the next release.
The next upspring will have a couple of improvements and fixes regarding textures, and will also add flip/mirror UV.