Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Figure out why the view totally breaks sometimes. #8

Open
cnlohr opened this issue Oct 19, 2014 · 12 comments
Open

Figure out why the view totally breaks sometimes. #8

cnlohr opened this issue Oct 19, 2014 · 12 comments

Comments

@cnlohr
Copy link
Owner

cnlohr commented Oct 19, 2014

Some people want:

quatnormalize( LookQuaternion, newquat );

commented out. But, it does prevent the view from righting itself, and carrying through portals correctly.

@jaredloomis
Copy link
Collaborator

It would be nice to know who else is having this problem, because it only breaks on some systems.

I don't know what is relevant, but here are some of my specs:

  • Arch Linux x86_64, kernal 3.17
  • AMD Radeon HD 6450
  • catalyst-test 14.9-11 from AUR. Supports OpenGL up to 4.4.
  • gcc 4.9.1
  • tcc 0.9.26
  • freeglut 2.8.1

@phiresky
Copy link
Collaborator

I have Arch x86_64 kernel 3.16, gcc, tcc and freeglut are the same for me.

I'd say it's because of your GPU not liking the shaders, they are very complex. Maybe this could be used to find out what's wrong.

@cnlohr
Copy link
Owner Author

cnlohr commented Oct 23, 2014

I'm on an NVIDIA GPU - do both of you guys have the view issue?

I think I should valgrind the issue. Can one of you guys take a video of it failing?

@phiresky
Copy link
Collaborator

No, I do not, works fine for me.

@cnlohr
Copy link
Owner Author

cnlohr commented Oct 24, 2014

Bump Fiendfan, can you post a video or pictures or anything?

@jaredloomis
Copy link
Collaborator

I should be able to post some video in a few hours.

@jaredloomis
Copy link
Collaborator

Here's a video and the trace file, for use with apitrace.

@jaredloomis
Copy link
Collaborator

In the video at about 0:20-0:30, I was holding down "w" and moving the mouse around. When the mouse is moved but no movement key pressed, it has no effect. When a movement key is pressed and then I move the mouse around, it moves me around slightly and cancels out most movement caused by pressing the key, but there is no rotation in either case.

@cnlohr
Copy link
Owner Author

cnlohr commented Oct 25, 2014

That is very strange. I've never used apitrace, I'm going to try to give that a shot in the next few days. In the mean time, it would be helpful for you to print both quaternions around the normalize... So I can see what the numerical values are. That would be significantly easier.

@jaredloomis
Copy link
Collaborator

I'm not at my computer for a while, but I'm fairly sure I remember the quaternion values.

Before normalization, the quaternion is within a few tenths more or less than "0.5 0.5 0.5 0.5", depending on how much I moved the mouse. After normalization, the quaternion is always exactly "0.5 0.5 0.5 0.5". I will post the actual data when I am able to.

@jaredloomis
Copy link
Collaborator

After doing more tests, it seems that gpRotFwd->NewDirection and gpRotUp->NewDirection are always 0 0 0 0. I'm investigating in RTHelper.cpp to see if I can find out why.

@cnlohr
Copy link
Owner Author

cnlohr commented Oct 27, 2014

I think that we can detect cases like this and reset the camera. Once reset, I would expect it to continue acting normally. For now, you can try to reset the quaternion to <0,0,0,1>

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants