Please fix camera interpolation
#1

I was very excited and happy when camera interpolation was added in 0.3e. I've wanted it to be added for YEARS. I immanently went in-game and started playing about with it, only to find that it was bugged, which made me very sad. Almost EVERY TIME my camera would either skip forward in the interpolation, or completely stop half-way through. It was soooo disappointing. I reported it twice in the 0.3e RC stage, but nothing got done. I guess there was more important stuff which is fine, but I hope Kye/you can find a few minutes to read this and possibly implement a solution I have thought of.

Now I KNOW the problem likely isn't in SA:MP's control - it's something to do with the GTA: SA engine and framerates. There are MANY problems caused by frame rates (toggling sirens, flashing health bar/wanted stars, drunk level, skimmers not taking off from water), but can't the interpolation issue simply be fixed by (excuse the wording, I'm not good at this sort of terminology) 'spamming' SetPlayerCameraPos/LookAt client-side with the interpolation coordinates worked out using maths? Instead of 'using' the GTA: SA camera interpolation system/function thing?

PLEASE consider this. It would make a lot of people happy.

P.S. The bug is REDUCED if you use a lower framerate; but this should NOT have to be a compromise. I don't want to have to use 3 FPS to have a feature. Plus the players on my server won't be happy about having to use lower frame rates.

Previous reports:
https://sampforum.blast.hk/showthread.php?tid=334466
https://sampforum.blast.hk/showthread.php?tid=325337 (a few people confirm it here)

Additional information:

- InterpolateCameraPos AND InterpolateCameraLookAt used at the same time, with the same duration. They move together.
- Turning frame limiter on helps a LITTLE bit, but it still does it a LOT. Without frame limiter you're lucky to get 3 interpolations without a skip/freeze.
Reply
#2

Beta testers ignor it...
Reply
#3

I can confirm this! Hope it gets fixed. rep+
Reply
#4

confirmed ages ago, makes the camera functions useless imo
Reply
#5

Quote:
Originally Posted by - Lukas!
Посмотреть сообщение
Beta testers ignor it...
Uh, no. You have no clue what you're talking about.

@OP: The issue is because of how GTA:SA was programmed with its timers. SA was developed for Playstation 2 with the game running at 25FPS. Unfortunately this causes a few issues with timing on the PC version. I don't believe this can be fixed easily.
Reply
#6

I gave the cause and solution in the first post. Read it all please.
Reply
#7

That's not really a solution...
Reply
#8

Why not? Surely that's what GTA: SA's internal system is doing..?
Reply
#9

Quote:
Originally Posted by MP2
Посмотреть сообщение
Why not? Surely that's what GTA: SA's internal system is doing..?
"spamming" the set camera position opcode to move the player's camera would result in very choppy movements. It's like using the fps script in a car, the server can only update your camera's position so fast. It's a result of the scripting being fully serverside.
Reply
#10

Client side..
Reply
#11

Working with camera movements in the past, if the camera got told to update while it was transitioning, it would stop moving completely and start moving again (although admittedly this was back in the VC days. I'd imagine SA didn't change much).

As for making our own camera movements with interpolation... I don't know to be honest. Who's to say there still won't be timing issues?
Reply
#12

You don't know - if you don't try
Reply
#13

Quote:
Originally Posted by RayW
Посмотреть сообщение
Working with camera movements in the past, if the camera got told to update while it was transitioning, it would stop moving completely and start moving again (although admittedly this was back in the VC days. I'd imagine SA didn't change much).

As for making our own camera movements with interpolation... I don't know to be honest. Who's to say there still won't be timing issues?
Unless there is a rip in the space-time continuum, I think it will be fine. It'll be an internal timer.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)