Duke4.net Forums: EDuke32 2.0 and Polymer! - Duke4.net Forums

Jump to content

  • 213 Pages +
  • « First
  • 143
  • 144
  • 145
  • 146
  • 147
  • Last »
  • You cannot start a new topic
  • You cannot reply to this topic

EDuke32 2.0 and Polymer!  "talk about the wonders of EDuke32 and the new renderer"

User is offline   Hendricks266 

  • Weaponized Autism

  #4316

I realize now that there is no point in implementing hardcoded .alpha functionality. Since .blend won't work in OpenGL, if you're using .alpha in OpenGL then you probably aren't using .blend for anything and can ship translucency tables.

That said, we could likely leverage rotatespritea's alpha member, or if we want to avoid a mess, create a rotatespriteb command that has .blend instead of .alpha. On the other hand, screentext would need a new command too which would be sad.

Maybe negative inputs for <alpha> use blending tables instead? A new orientation bit?
0

User is offline   Micky C 

  • Honored Donor

#4317

Not sure if this behavior is present in the original duke 3d or if it's a bug, I've never seen it mentioned before.

I have some sprites in a (thin) rotating sector, and gradually over time the sprite positions are being offset tangential to the path, which isn't practical for a map of course. Dndebug reveals the sprites have definitely moved from their original position and are outside their original sectors. A test map can be provided if necessary (I'd have to make it from scratch but shouldn't take long).

This post has been edited by Micky C: 19 February 2014 - 03:37 AM

0

User is offline   Mblackwell 

  • Evil Overlord

#4318

Is the Relative bit set on the floor?
0

User is offline   Fox 

  • Fraka kaka kaka kaka-kow!

#4319

 Nukey, on 16 February 2014 - 07:56 PM, said:

1] "dummytilerange" doesn't seem to work with (0,0). I am forced to use (1,1), which leaves a small black square in place of any objects which are not redefined with a new texture (i.e. what if I just want to leave some tiles completely blank?).

2] old animation definitions remain active with the new tiles. There doesn't seem to be a way to wipe old animation info. New textures with new animation definitions work fine, but a newly defined (unanimated) texture that happens to land on an old animated texture number will inherit the same animation properties.


dummytile <tile> 65536 65536
animtilerange <tile1> <tile2> 0 0

Hackish, but it does the job...
0

User is offline   Nukey 

#4320

Ha! nice. Thanks mate.
0

User is offline   Helixhorned 

  • EDuke32 Developer

#4321

View PostJames, on 18 February 2014 - 09:49 AM, said:

I've noticed a strange glitch with the new blend feature (with the custom pal and all) Whenever an object with a blend of 255 is onscreen (using the additive mode) it seems to apply it to translucent HUD elements as well (or rather things using rotatesprite I guess) It doesn't do it all the time, only if the item is onscreen.

Ah yes, I forgot to propagate the blending table index to all rendering routines. Good catch, once again!

View PostHendricks266, on 18 February 2014 - 09:56 AM, said:

Maybe negative inputs for <alpha> use blending tables instead? A new orientation bit?

I'll add the suggestion of packing the blending table index into bits 9..16 of the alpha argument. That way, one won't need to branch on the rendering mode in the CON code if one wants both alpha and blend.

View PostMicky C, on 19 February 2014 - 03:37 AM, said:

I have some sprites in a (thin) rotating sector, and gradually over time the sprite positions are being offset tangential to the path

Sprite movement effected by rotating sectors is implemented by adding the corrensponding circular arc to its current position in each tic (using rotatepoint). It is expected that roundoff error accumulates when doing this repeatedly. The right way to rotate an object which must stay fixed with respect to the pivot is by saving its original relative position, and rotate that one each time. Passing bit 4 (unnamed, but you could e.g. "define ACTORTYPE_ROTFIXED 4") to useractor's first argument tells the game to do just this kind of rotation and assume that it will never move on its own.
1

User is offline   Micky C 

  • Honored Donor

#4322

So basically that's what happens in the original game and it's not going to be fixed in the vanilla game?
0

User is offline   Helixhorned 

  • EDuke32 Developer

#4323

Actually, we already fix sprites of certain statnums in the frame of reference of the rotating sector:
// sprites with these statnums should be considered for fixing
#define ROTFIXSPR_STATNUMP(k) ((k)==STAT_DEFAULT || (k)==STAT_STANDABLE || (k)==STAT_FX || \
                            (k)==STAT_FALLER || (k)==STAT_LIGHT)

(As can be seen here, "destructible" flat sprites take on STAT_FALLER.)

The assumption here is that such sprites will never move in the x/y plane except by the rotating sector. This may be true when running the vanilla game, but it's a bit unsound when having custom CON code loaded: after all, any code could just come and move any other sprite. For this reason, I prefer having the user specify which actors will never move on their own explicitly.
Probably, what you want is some non-destructible spritework rotating without gradually shifting away, right? I guess it could be arranged that the current hard-coded behavior is augmented in some way (setting an xvel bit on the sprites? Setting some property on the SE?), but I like doing that only when there's no elegant scripting solution.
0

#4324

Yup, I've had the same problem with error accumulation when I tried to force a camera sprite to rotate around a certain object using a SE 0. It would be nice to have certain actors (such as the cameras) hard-coded to use a more precise rotation method. One could make some cool effects with this.

It's great to have multiple blend tables, maybe I could make benefit from it someday. Can they be implemented by direct editing of Palette.dat file?

Also I've got a little issue to report. I've noticed that since some (2013?) build the rotatesprite command aligns sprites to the top-left corner incorrectly (orientation flag 16): some sprites drawn on the screen are offset to the right by one pixel (actually half a texel) what just fucks up all the precise alignment of my HUD. Any hope to have this fixed?
0

User is offline   Nukey 

#4325

View PostFox, on 19 February 2014 - 08:27 AM, said:

dummytile <tile> 65536 65536
animtilerange <tile1> <tile2> 0 0

Hackish, but it does the job...


The first one worked, so thanks for that.

Unfortunately the second one doesn't seem to wipe the old animation definitions. When I try, say for the queen texture:

animtilerange 4740 4740 0 0

or any variation thereof, it doesn't stop her from animating. Maybe the queen isn't "animating" per se but is hard-coded to animate instead? I haven't looked much into it.

Not a big deal anyway, since Plagman reminded me that many picnums are going to have interfering code that can't be wiped so easily, but I figured I'd mention it.
1

User is offline   Fox 

  • Fraka kaka kaka kaka-kow!

#4326

Are you talking about the monsters walking in the map editor? That's hard-coded indeed, in fact you would notice that in-game they are static until they spot the player.
0

User is offline   Nukey 

#4327

Good, ya, that explains it.
0

User is offline   Fox 

  • Fraka kaka kaka kaka-kow!

#4328

Since we are on the rotatesprite subject, what about a orientation flag to bypass art animation? I know that's possible for the original game (i.e. menu selection icon) so it could be extended to CON.
0

User is offline   Jblade 

#4329

Would there be a way to detect what type of sound is playing in Event_sound? Specifically ones with the player speech sound flagged. I want to affect all player speech, doing it manually is possible but having a way to automatically affect player speech rather than having to do each one individually would be great.
1

User is offline   Stabs 

#4330

why is it doing this now

Attached Image: wtf.jpg
0

User is offline   Mark 

#4331

Towards the top of the previous page someone else posted a pic of that same problem. They said it went away if they turned texture cache option from "compress" to either "on" or "off". I haven't seen a fix mentioned yet if it is an actual bug.

Did you try the usual delete the textures and textures cache files to see if the problem goes away or persists?

This post has been edited by Mark.: 21 February 2014 - 04:12 PM

0

User is offline   Stabs 

#4332

cheers, fixes it, glusetexcache = 0 was the fix it was glusetexcache = 2 before

other option is to leave it at 2 and redelete the cache files every single time you run it

This post has been edited by DanM: 21 February 2014 - 04:37 PM

0

User is offline   TerminX 

  • el fundador

  #4333

Just committed a fix for that.
1

User is offline   Stabs 

#4334

:blink:
0

User is offline   Micky C 

  • Honored Donor

#4335

View PostHelixhorned, on 20 February 2014 - 09:45 AM, said:

Probably, what you want is some non-destructible spritework rotating without gradually shifting away, right?


Yeah that's right. Although the map is for the AMC TC so there is custom code involved, but the sprite I'm using is just a regular sprite.
0

User is offline   Stabs 

#4336

strange under sectors pal 29 the prop sprites / extra duke skins i use for edf/cops would display correctly but if i change the sector too pal 31 they stop using their pal and just look like a normal duke in cutscenes when they are props, but when they become bots in game they start using their skins correctly

This post has been edited by DanM: 22 February 2014 - 12:02 AM

0

User is offline   Hendricks266 

  • Weaponized Autism

  #4337

As of r4343, you can now invoke a make command in the following way:

make VC_REV_CUSTOM="-Custom Awesome Build"

and, provided you are building from an active SVN or git-svn checkout, rev.h will automatically be filled like so:

EDuke32 2.0.0devel r4344-Custom Awesome Build (32-bit)

You can use the octal escape sequence "\040" to start with a space.

make VC_REV_CUSTOM="\040Mind the Gap"

EDuke32 2.0.0devel r4344 Mind the Gap (32-bit)
1

User is offline   Stabs 

#4338

makepalookup { pal 29 blue 13 green 7 remapself }

THANKYOU :blink:

Damn thats an awesome command so i modded the script made it keep 29 pal but with that command i can tweak up the perfect nighttime fog, and solves my npc problem

This post has been edited by DanM: 22 February 2014 - 01:08 AM

0

User is offline   Hendricks266 

  • Weaponized Autism

  #4339

View PostMicky C, on 12 February 2014 - 09:35 PM, said:

Is there a mapster32 function or some code that will turn some selected sectors upside down?

Try this. Instructions included.
1

User is offline   Helixhorned 

  • EDuke32 Developer

#4340

View PostCraigFatman, on 20 February 2014 - 12:58 PM, said:

It's great to have multiple blend tables, maybe I could make benefit from it someday. Can they be implemented by direct editing of Palette.dat file?

Yes, the additional blending tables can be packed after the main translucency table, using this format (in pseudo-C):
char magic[12] = "MoreBlendTab";
uint8_t numAdditionalBlendTabs;
struct {
    uint8_t blendnum;  // the .blend index
    uint8_t blendTab[256][256];
} additionalBlendTabs[numAdditionalBlendTabs];


Quote

Also I've got a little issue to report. I've noticed that since some (2013?) build the rotatesprite command aligns sprites to the top-left corner incorrectly (orientation flag 16): some sprites drawn on the screen are offset to the right by one pixel (actually half a texel) what just fucks up all the precise alignment of my HUD. Any hope to have this fixed?

The current build displays the LNGA2 HUD like this for me:
Attached Image: LNGA2_HUD_r4344.png
There's the one-pixel vertical line between the 'bars' noticeable, but nothing that's offset by half a texel here (this is 1680x1050). Also, r3284 (which introduced -rotatesprite-no-widescreen) displays it the same.

Can you provide a small example demonstrating the issue? I created the following one:
onevent EVENT_DISPLAYREST
    rotatesprite 0 105 262144 0 2834 0 2 272 0 0 xdim ydim  // red dash
    rotatesprite 0 0 1048576 0 2822 0 0 16 0 0 xdim ydim  // big exclamation sign
endevent

which displays like this:
Attached Image: duke0031.png
Passing -rotatesprite-no-widescreen makes the exclamation sign flush to the left border, as expected.

As you can see, screen display is pretty complex and depends on various "environmental" factors. So, an example differing between now and r3284 would be most helpful.


View PostNukey, on 20 February 2014 - 01:51 PM, said:

Unfortunately the second one doesn't seem to wipe the old animation definitions. When I try, say for the queen texture:

animtilerange 4740 4740 0 0

or any variation thereof, it doesn't stop her from animating. Maybe the queen isn't "animating" per se but is hard-coded to animate instead?

You have to distinguish between engine-side animation and game-side animations via actions. The former is defined from ART. Whenever you see something like "Fwd 15" in the status bar in tile selection mode in Mapster32 (e.g. tile 100, atomic health), that's engine-side animation. Actions are of course defined from CON. In the case of the Queen, here's what makes her animate, in GAME.CON:
action ABOSS4WALK          0 4  5  1  30
action ABOSS4DYING        40 9  1  1  20
action ABOSS4ABOUTTOSHOOT 20 1  5  1  40
action ABOSS4SHOOT        25 2  5  1  10
action ABOSS4LAYIT        50 3  5  1  120
action BOSS4FLINTCH       40 1  1  1  1
action ABOSS4DEAD         49

(Well, actually, these only define potential animations. Actually starting them is done with action. EDIT: the game-time command, that is.)
1

User is offline   Helixhorned 

  • EDuke32 Developer

#4341

View PostFox, on 21 February 2014 - 10:33 AM, said:

Since we are on the rotatesprite subject, what about a orientation flag to bypass art animation? I know that's possible for the original game (i.e. menu selection icon) so it could be extended to CON.

Can you explain in more detail what you mean by "bypassing" it? Which of the standard rendering routines do that? Where is tile 3190 not animated?

View PostJames, on 21 February 2014 - 11:22 AM, said:

Would there be a way to detect what type of sound is playing in Event_sound? Specifically ones with the player speech sound flagged. I want to affect all player speech, doing it manually is possible but having a way to automatically affect player speech rather than having to do each one individually would be great.

Accessing sound properties such as their flags is planned for Lunatic. For CON, that would amount to adding a new kind of structure, like "getsound[].xxx". I'm not interested in that.

View PostDanM, on 22 February 2014 - 12:01 AM, said:

strange under sectors pal 29 the prop sprites / extra duke skins i use for edf/cops would display correctly but if i change the sector too pal 31 they stop using their pal and just look like a normal duke in cutscenes when they are props, but when they become bots in game they start using their skins correctly

Is there an easy way to check out the recent DNE development build? (That is, using a version control system.) An example would help in any case.

View PostDanM, on 22 February 2014 - 01:07 AM, said:

THANKYOU :blink:

You're welcome, but please don't go on hurried mass-modification sprees whenever EDuke32 changes appear to have broken something in your mod, 'kay? :huh:
0

User is offline   Stabs 

#4342

no no, everything else was needed all my custom textures needed their own tiles to play nice with the new fog system, they just scale and look better too, i was just using pal 31 because it was a bit different looking than the new pal 29 and i thought i couldn't modify the built in fog shades colors, it was really too blue before which was my main problem and left large black chunks where walls where using pals of 40+ as the fogging would not effect them

btw is there a way i can def the old duke model back in based on its pal so i can have my edf/cops back but still have the new player model

This post has been edited by DanM: 22 February 2014 - 04:06 AM

0

User is offline   Micky C 

  • Honored Donor

#4343

View PostHendricks266, on 22 February 2014 - 02:30 AM, said:

Try this. Instructions included.


Hail to the King, baby!

Edit: I was wondering if it was also possible to make an extra option for the script, which takes what you've done on the floor (relative heights, textures, shades, slopes), and apply them to the ceiling of the same sectors, and vice versa? I have a feeling that might be more work, so if it's too much then that's ok.


Posted Image

This post has been edited by Mblackwell: 22 February 2014 - 06:22 AM

2

User is offline   Helixhorned 

  • EDuke32 Developer

#4344

View PostMicky C, on 21 February 2014 - 11:52 PM, said:

View PostHelixhorned, on 20 February 2014 - 09:45 AM, said:

Probably, what you want is some non-destructible spritework rotating without gradually shifting away, right?

Yeah that's right. Although the map is for the AMC TC so there is custom code involved, but the sprite I'm using is just a regular sprite.

Now that I look at it again, 'normal' static sprites already should be rotation-fixed. STAT_DEFAULT is 0.

As far as other kinds of sprites such as cameras are concerned, I think I'll add a new event, EVENT_ROTFIXSPRITE, that will hook into premap.c:G_SetupRotfixedSprites(). If the camera had its own statnum, I guess I could add it to the list of rotation-fixed ones, but curiously it's changed to STAT_ACTOR on spawn even if there's no actor code for it in GAME.CON.
0

#4345

View PostHelixhorned, on 22 February 2014 - 03:28 AM, said:

Yes, the additional blending tables can be packed after the main translucency table, using this format (in pseudo-C):
char magic[12] = "MoreBlendTab";
uint8_t numAdditionalBlendTabs;
struct {
    uint8_t blendnum;  // the .blend index
    uint8_t blendTab[256][256];
} additionalBlendTabs[numAdditionalBlendTabs];


Glory hallelujah! But can we use this with rotatespritea command? I've put a multiplicative blend table for #1, and it works for sprites, but on-screen graphics behave strange. Doing "setactor[THISACTOR].blend 1" on EVENT_GAME makes all the HUD to use this blend mode too.

View PostHelixhorned, on 22 February 2014 - 03:28 AM, said:

As you can see, screen display is pretty complex and depends on various "environmental" factors. So, an example differing between now and r3284 would be most helpful.

Well, I admit that it's apparently my fault, because LNGA2 works well for me too. Looks like I haven't done sufficient research. I guess I took a way too long break from modding. =) Actually the culprit is my subroutine which dynamically rescales and displaces the HUD graphics. So thanks anyway.
0

Share this topic:


  • 213 Pages +
  • « First
  • 143
  • 144
  • 145
  • 146
  • 147
  • Last »
  • You cannot start a new topic
  • You cannot reply to this topic


All copyrights and trademarks not owned by Voidpoint, LLC are the sole property of their respective owners. Play Ion Fury! ;) © Voidpoint, LLC

Enter your sign in name and password


Sign in options