Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - Kweepa

#2241
Advanced Technical Forum / Re: AGS 3D
Wed 24/08/2005 19:06:39
Quote from: Geoffkhan on Wed 24/08/2005 18:43:38
By the way, in the starting places at the main outside room and Scid's bar, you can walk backwards and fall off the "cliff." I guess the starting places are too close to the edge.
Well spotted. I'll get it fixed.
Cheers!
#2242
Wow, that's some breast fixation you have there.
Five posts and three of them breast-related!
#2243
Advanced Technical Forum / Re: AGS 3D
Wed 24/08/2005 15:29:07
So it does. I forgot about that.
Errr, it's an integer though. This one is a float.

Look! A cow's nest!
#2244
Advanced Technical Forum / Re: AGS 3D
Wed 24/08/2005 13:43:10
Quote from: Edmundo on Wed 24/08/2005 07:03:49
I demand that the default controls for movement are wasd!
There will be customization functions, do not worry.
The only problem is the editor uses WASD, but I should change that anyway.

Quote
...accomodate 8 direction characters?
8 direction characters are on my unwritten todo list. It's not trivial, but it's not difficult.
Also on the unwritten todo list is collisions with characters.

Quote
...sprite rotation...
I hadn't thought about it, but yeah, that should work just dandy. I'll check it out! Assuming, that is, that you can rotate AND scale.

[EDIT]
New version
- the engine automatically renders objects and characters using AGS's x, y coordinates as the X, Z coordinates and an additional Y for the height off the ground. Will need to rethink the coordinate system! Damn!
#2245
Advanced Technical Forum / Re: AGS 3D
Wed 24/08/2005 06:39:01
Quote from: Jay on Wed 24/08/2005 06:20:55
After testing I found a sorting problem with Mika. After I first noticed it, it was a bit hard to duplicate, but I managed this screenshot (which is from a distance, but the first time I saw it it was closer).
That's odd - thanks for the report. I'll have a look at it.
(You must have a fast machine - 40FPS with a lot of stuff on screen at 640x480!)

Quote
Also, the ground is still always drawn last, and Scid's roof is still drawn first.
Right, if you look at the room script you can see they are drawn first, unsorted. It's a kind of optimization. I'll probably remove it for the roof since the sorting works better now.

Quote
The last thing I noticed is that when I turn collisions off and move in the air, I can't land on the blue blocks or the yellow sphere when I turn collisions on again.
Again, if you look in the room script those objects are marked as non-ground (and non-solid in the case of the sphere).

Quote
Oh - and there's a warnings.txt file that says "(in room 1): display_switch_out".
Interesting. I don't know what that means. Time for a search of the forums :)
[EDIT] Looks like that is written to the debug log if you switch away from the game. It only happens in debug mode, which I enabled for the FPS counter. Well spotted though!

Quote
edit: I tried to get a better screenshot of the Mika thing, and when I did, I noticed that I think it might be an issue with her baseline. (see here)

Well, her baseline *is* a little under her feet. I should probably do something about that. Good point. I think she's walking slightly through those blocks though. Which is just a scripting bug.

Gil,
Dixie was only a test character. Sorry about the tease!

I think this is nearly ready to go. Just a couple of little things:
- move objects over to work like characters, so you can use standard AGS functions to add and remove them
- maybe try to fix up the little glitches seen in Jay's screenshots
- clean up the interface functions
- tidy up the editor a bit and perhaps allow reading of scenes from text or binary files written from the editor
- make a module

Steve
#2246
Advanced Technical Forum / Re: AGS 3D
Wed 24/08/2005 05:40:34
Bump for new version
- moving characters that can move from room to room (eg, talk to the Bum)
- view frustum culling
- even better sorting
- a FPS meter using Debug(4, 1)

Let me know if you encounter any problems!

http://www.steporg.com/step/ags/games/ags3d.zip

Edited by moderator, fixed the url. :=
#2247
Quote from: Ishmael on Tue 23/08/2005 22:02:44
It'd be usefull for arcade type stuff.

If it's a top-down game, it might be better to have one loop and draw it rotated? That way you can have as many angles as you want, and only have to draw and import one loop.
#2248
Quote from: simulacra on Tue 23/08/2005 17:26:54
1. When displaying dialogue alternatives, the background music stutters.

Yeah, I noticed some stutter when changing rooms too. I probably need to increase the buffer size or poll the music more often.

Quote
2. When displaying a large MPEG, the first seconds are not shown as the program loads the file. As soon as the file is loaded, the MPEG plays normally.

Odd, I don't get that behaviour. I added some precaching, but maybe I removed it again. I'll check.

Quote
But hey, it runs! That's GREAT!

Glad to hear it!
#2249
Wow, fantastic work!
What else did you have planned?
#2250
Advanced Technical Forum / Re: AGS 3D
Tue 23/08/2005 12:58:43
Quote from: Gilbot V7000a on Tue 23/08/2005 11:31:44
Hmmm strange, are collision detection, walk up ground objects, right click jumping disabled by default for this version? (I can even use pgup/down to fly, dive like the old versions now).

Oops, yes they are. Press F6 to reenable.

Quote
Anway, now, what you need to do is to import 4-direction character graphics and make them face the appropiate direction!

That's next on the to do list (along with character movement)!
You read my mind!

[EDIT]
I haven't forgotten you Jay.
Thanks for the bug report - and the incredibly useful pictures!
I fixed it in the latest version, by making the sorting slightly more expensive.

Cheers!
#2251
Advanced Technical Forum / Re: AGS 3D
Tue 23/08/2005 05:05:07
Bump for a new version - finally fixed the sorting!
Of course there may be bugs in this implementation, and there's definitely room for speed improvement - please check it out and let me know.

Get it here!
#2252
Sorry to dig up this old thread... (well, kind of sorry). :=

Here's an example of some code that's incredibly ugly without lazy evaluation (found while writing ags3d...)

Code: ags

while (j > numToDrawUnsorted && ShouldSwapPrims(pzj, pzi))
{
  // blah blah
  j--;
}


The solution is:

Code: ags

bool swap = ShouldSwapPrims(pzj, pzi);
while (j > numToDrawUnsorted && swap)
{
  // blah blah
  j--;
  if (j > numToDrawUnsorted)
  {
    swap = ShouldSwapPrims(pzj, pzi);
  }
}


ShouldSwapPrims is a very expensive function that shouldn't be called more than is necessary...
Yuck!
#2253
Opo. The man.
#2254
Advanced Technical Forum / Re: Error in AGS
Mon 22/08/2005 22:08:51
I don't see why this shouldn't work.
Did you try it without the voice files (remove the &1, &2 etc from the DisplaySpeech commands)?
#2255
Advanced Technical Forum / Re: AGS 3D
Mon 22/08/2005 15:02:56
Quote from: Ishmael on Mon 22/08/2005 14:41:42
Could you make elevator type of thingymambobs with this kind of logicalness or something else?

You already can, for the player. To test it, just place a block, scale it down, stand on it, then select it in the editor and move it upwards. Obviously in a game you'd want to script the movement in the room's repeadly_execute.

Platform behaviour (moving left and right) won't work of course. I might try to do something about that.
#2256
Quote from: Edmundo on Mon 22/08/2005 14:40:15
The version that you can download is supposed to run at 40fps which does clock at 24-25 fps on the mac, but I did some extra tests with a special 60fps version just to see if it would go faster, but again, on the mac it averaged 35fps.

That's my point though. Why would the 60fps version get 10 more fps than the 40? Ohh, unless it's the Sleep I added to cut down on the fan noise... Oopsie. That might very well explain it.

Heh.
#2257
Hey, don't slag the mac version! :=
If you're running 320x200, the mac version uses 640x400 instead, so that might explain the discrepancy.

Interesting to see that RawRestoreScreen is slow... hmmm...

[EDIT] Are you sure your FPS calculation is right? I get 24/25 FPS on an iMac G5.
#2258
Advanced Technical Forum / Re: AGS 3D
Mon 22/08/2005 14:27:26
Quote from: Rui "Brisby" Pires on Mon 22/08/2005 09:25:07
The up/down DEFINES seem to be reversed (I defined the UP key as W and DOWN as A, but ingame W made me move BACKWARDS and A made me move FORWARDS)

Oops. I'll fix that.

Quote
I tried to set it up so that LEFT and RIGHT rotated the camera instead, so I used "camera_rotation.x+=2.0" for rotating RIGHT. Instead of what I expected, it rotated UP. I'm sure there's a reason, but one would think that logically moving an X coordinate would make it go sideways, so I'm just curious as to why it is not so.

Heh. The camera is being rotated. The 'x' here refers to the AXIS OF ROTATION, which points to the (camera relative) right. So the view tilts up and down.

Quote
Physics don't apply to most primitives - in fact, they only apply to the camera. That is already kewl, but I can't help but wonder - will some primitives/characters/objects also, say, fall down when there is no floor below them? Or is that something we can self-script?

I'm planning to make falling physics an option for all primitives. It's expensive so it should be off by default and only switched on if you think it's necessary. It'll also be very limited. It'll just check if there's something marked "ground" in a direct line downwards from the center of the primitive (like the player/camera does).

Cheers,
Steve
#2259
Quote from: Kinoko on Mon 22/08/2005 05:42:25
if ((GetGlobalInt(25)==3) && (keycode==keyx)) MusicNote; // This triggers an increase in the global int among other things
else if ((GetGlobalInt(25)==3) && (keycode!=keyx)) EndMusic; // This basically causes you to lose the mini-game, resetting everything.
else
if ((GetGlobalInt(25)==4) && (keycode==keyz)) MusicNote;
else if ((GetGlobalInt(25)==4) && (keycode!=keyz)) EndMusic;

If you don't add the else, then the global int is increased in the first 'if' and immediately checked in the second.

I'd do it like this to clean things up a bit:

Code: ags

int musicKeyForStage[6];
int musicSoundForStage[6];
int musicStage;
int musicEndStage;
bool playingMusicGame = false;

function SetupTune1()
{
  musicKeyForStage[0] = 'X';
  musicSoundForStage[0] = 1;
  musicKeyForStage[1] = 'Z';
  musicSoundForStage[0] = 2;
  ...
  musicStage = 0;
  musicEndStage = 4;  // for example
  playingMusicGame = true;
}

function MusicNote()
{
  PlaySound(musicSoundForStage[musicStage]);
  musicStage++;
  if (musicStage == musicEndStage)
  {
    playingMusicGame = false;
    // hooray!
  }
}

function EndMusic()
{
  playingMusicGame = false;
  // boo!
}

function on_key_pressed(int keycode)
{
  if (playingMusicGame)
  {
    if (keycode == musicKeyForStage[musicStage])
    {
      MusicNote();
    }
    else
    {
      EndMusic();
    }
  }
}
#2260
Advanced Technical Forum / Re: AGS 3D
Mon 22/08/2005 04:26:23
Quote from: Jay on Mon 22/08/2005 02:28:41
- There's something wrong with the underside of pyramids. It doesn't get rendered correctly.
Oops, thanks for noticing. Fixed in the uploaded version.

Quote
- About the sorting bug: I noticed that when I experience the bug, if I click on where a primitive should be, then the correct primitive is selected, as opposed to the one that is wrongly sorted. Might this shed any light on how to fix the bug?
Basically, no. :=
I know exactly why the sorting is wrong. It's just not easy to make it right.
The picking code uses an entirely different, extremely slow, method to find the closest primitive.

Quote
edit: Also, barring CJ updating AGS itself, couldn't someone just write a plugin that gives AGS3D the functions it needs to do textures, as well as even maybe RawDrawTransparent...() functions to allow for partially transparent shapes?
Yes, I/they could. But that would spoil the fun!
SMF spam blocked by CleanTalk