Quote Originally Posted by pstudio
I tried the phxDirect3D9_Win which seemed to work fine until I tried to read some input. Nothing happens at all. It seems the TPHXApplication.HandleEvent(const Event: TPHXEvent) is never called when a key is pressed and therefore the instance of TPHXInput isn't updated.
The code worked fine when I switched to OGL (besides the access violation).
I havnt written the input handling for the D3D9 provider, so thats not surprising it doesnt work I probably going to use SDL for the d3d version aswell, to avoid having to mess with the win api

Quote Originally Posted by pstudio
The image editor is looking really good though there are a few bugs. I can't scroll around and see the full image when I'm zoomed in. There were also some problems when I tried to add shapes to the file. The editor went a bit berserk and added oddly placed points to my shapes out of nowhere.
The scrolling should work, or panning works (drag right mouse button) it seems i have broken the scrollbars I'm using the same custom control for the image, skin and map editor, i must have messed up the image editor when writing on the map editor

I'm having trouble reproducing the shape problem, but i'm going to rewrite that function, i think it would be wiser to use the existing TPHXShape classes instead of the custom TPHXImageShape i'm using now.

Theres quite a bit of code in the image editor, so i'm not surprised if there is more bugs lurking there

Thanks for the error reports!

Quote Originally Posted by pstudio
I'm looking forward to see a complete version of the map editor I was working on my own, but it seems that yours will do the stuff I need when it's done.
I'm trying to add some common functionality for most tile based games, its kindof useable as it is, the maps for the tank demo is made in it.

Quote Originally Posted by pstudio
I'm trying to make a game with Phoenix so I'm testing some stuff with entities and collision to find a setup that works for my game. I've written some code that works pretty well except for one problem.

I've uploaded a 7zip with a small example since that's the easiest way to illustrate the problem. It's a simple platform example with a character and 3 platforms. The platforms are meant to be completely solid (You can't jump through them like in many other platform games). It works pretty well except if you hit the platform from the right. If you hold the left arrow key down and hits a platform from the right you'll get stuck in the platform slowly falling down.

I've tried but can't see what's wrong with my code.

This is the code that handles the horizontal movement/colliding:
[pascal]
Body.Displacement := Vector2f(MoveSpeed * FrameTime, 0);

if World.Collide2(Body, Collisions) then
begin
Collisions.SortByTime;

if Collisions[0].Body.CollisionGroup = COLLISION_GROUP_2 then
begin
Body.Displacement := VectorMul(Collisions[0].Distance, 0.99);
end;
end;

Body.MoveToDisplacement;
[/pascal]

Is there something I've misunderstood about the collision system or is there perhaps a small bug in the Phoenix code?
The code you written should work. So something seems to be odd, what kind of shapes are you using? If it is boxes i have a idea of what could case it.

If the problem is what I think it is its due to only testing 2 separating axes for the Boxes, it is enough for detecting collisions, but it might return the wrong collision information.

Quote Originally Posted by pstudio
Without having looked at the specific code, what is the difference between TPHXCollisionWorld.Collide() and TPHXCollisionWorld.Collide2() methods?
It's kindof stupid, Collide2 is using the QuadTree while Collide doesnt. I'll add a flag instead.