TGEA 1.7.0 Beta 1 Bug - Freelook
by Andrew Edmonds · in Torque Game Engine Advanced · 03/19/2008 (1:01 pm) · 14 replies
Freelook doesn't seem to work in any of the new demos. It just flickers like it's trying to move the camera around the player, but also still moving the player (like it doesn't release the mouse control from the player object).
Anyone else seeing this problem?
Anyone else seeing this problem?
About the author
Formed in 2005, EiKON Games is an indie games development project based in the UK working on the tactical first person shooter "Epoch: Incursion". See the Join Us or Contact Us pages at http://www.eikon-games.com/
#2
If time allows I may look at it myself. I'll post here if I find anything.
03/19/2008 (2:35 pm)
Thanks Matt. It's not essential at all. I only use it to check how our character models look (running etc) from various angles in engine.If time allows I may look at it myself. I'll post here if I find anything.
#4
03/19/2008 (5:21 pm)
Freelook is underused? I love games that feature free look. We are talking about when you are in 3rd person view and you can LMB click and pull the camera around your character to get a view from all angles right? If so, that is definitely a feature I want in my game. It is something that can be used when a player wants to see if an NPC or another player is still chasing him, while he's still running away.
#5
Hopefully someone will come along with a fix before I get round to it :o)
03/19/2008 (5:46 pm)
I must admit I was a bit surprised to hear that it was underused. I'm hoping to get some time soon to take a look at this but unfortunately 'real life' is a bit hectic at the moment!Hopefully someone will come along with a fix before I get round to it :o)
#6
03/21/2008 (7:24 am)
Actually, almost the same "bug" is in TGE, but only when you see the other person trying to use "freelook". I see that problem is because the server does not report the clients that object is trying using "freelook", so it jumps back every time the update packets comes from server to the client.
#7
03/21/2008 (11:56 am)
The server shouldn't be involved in freelook, should it? I would think it's just a camera in the client.
#8
If you look at each other and try using freelook - the "remote client" will see jerky head movement, as the server transmits the head "side" thread status, but on remove client it's being reset every tick back to normal (as remote client does not aware about freelook status of first player).
Hope it's well described, as I'm too deep into programming right now and my message could look a bit messy :) sorry if it is so:)
03/21/2008 (12:00 pm)
Jeramy: start TGE or TGEA in multiplayer - and login there with 2 players.If you look at each other and try using freelook - the "remote client" will see jerky head movement, as the server transmits the head "side" thread status, but on remove client it's being reset every tick back to normal (as remote client does not aware about freelook status of first player).
Hope it's well described, as I'm too deep into programming right now and my message could look a bit messy :) sorry if it is so:)
#9
My definition is the camera moving on your own client looking around. Nothing to do with your player model at all. Is this not the way it is in TGEA?
03/21/2008 (5:42 pm)
Okay i must not understand yall's version of the definition of freelook.My definition is the camera moving on your own client looking around. Nothing to do with your player model at all. Is this not the way it is in TGEA?
#10
To be honest, I'd forgotten that part until bank posted here and was thinking it was a simple client-only function but there is some client-server synchronisation happening.
03/21/2008 (6:48 pm)
Your description is correct (TGEA defaults to the Z key). However, as you move the camera around the player, the player model looks in the direction you are viewing (moves his head to follow your viewing angle). Therefore the server must know about this to update your player model on the other clients.To be honest, I'd forgotten that part until bank posted here and was thinking it was a simple client-only function but there is some client-server synchronisation happening.
#11
03/21/2008 (7:19 pm)
Hm. I'm going to have to take that part out. I'd rather it just be a client only thing.
#12
On line 923 of GameConnection.cpp (1.7.1 code base)
change
To
06/17/2008 (10:58 am)
Ok the fix for this one was hard to find but easy to fix.On line 923 of GameConnection.cpp (1.7.1 code base)
change
bstream->writeFlag(mCameraPos == [b]0[/b]);
To
bstream->writeFlag(mCameraPos == [b]1[/b]);
#14
07/08/2008 (1:52 am)
Great work, Bill! Thanks for the fix.
Associate Matt Fairfax
PopCap
We've added it to the bug tracker but it may not get fixed before the release unless it is something very simpe. If we have to delay fixing it till after this release then it will be a pretty high priority for the next release (which should come fairly quickly).
I apologize if this is something that is essential to your game. It would suck to have that break when you are relying on it but our time/resrouces are limited and we have to prioritize accordingly.