Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 13 Next capture
2021 2022 2023
1 capture
13 Jun 22 - 13 Jun 22
sparklines
Close Help
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
avatar image
0
Question by uberblockhead · Oct 23, 2014 at 12:21 AM · saveframes

Saving a value 1 or 2 frames before it is destroyed

So an example of what i need is lets say the velocity of the object is 250m/s it flew of 2 seconds and now it is reduced to 150m/s and then it hits how can I save the value before it hits and is destroyed otherwise i will get 0m/s because the object hit the wall

Comment
Add comment
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

1 Reply

· Add your reply
  • Sort: 
avatar image
0

Answer by Kiwasi · Oct 23, 2014 at 12:39 AM

Unfortunately detecting future events is one of the few things that is still impossible in computer programming.

Easiest way to do this would be to store a value every frame with the object velocity. Keep that value around for a couple of frames. Then if the object hits a wall you can get the value from two frames ago. Pseudo code follows.

 private int velocityMinus2;
 private int velocityMinus1;
 private int velocityMinus0;
 
 void Update (){
     velocityMinus2 = velocityMinus1;
     velocityMinus1 = velocityMinus0;
     velocityMinus0 = rigidbody.velocity;
 }

The other option is to try and predict the collision in advance. This is more expensive in terms of code and processing power. It could also fail if your wall movement is unpredictable.

Comment
Add comment · Show 2 · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image Habitablaba · Oct 23, 2014 at 12:48 AM 0
Share

Unfortunately detecting future events is one of the few things that is still impossible in computer program$$anonymous$$g.

This is not entirely true. If you have an object which moves in a predictable way, you can totally predict where it will be in 'x' time.

$$anonymous$$y suggestion would be to add a short raycast off the front of your moving object, and when it registers a hit (effectively predicting a collision about to happen), save off the speed data.

avatar image Kiwasi · Oct 23, 2014 at 05:31 AM 0
Share

Raycasting would work. It really depends on the specific game situation, but my gut feel is a raycast each frame will be significantly less performant.

It's perfectly possible to predict future events. But it's impossible to detect events before they happen. Subtle difference I know. But if you throw some user input on it becomes very apparent where predictions can break.

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this Question

Answers Answers and Comments

3 People are following this question.

avatar image avatar image avatar image

Related Questions

UnitySerializer Only Saving one Game Problem 0 Answers

Saving lots of objects 1 Answer

Saving and loading data from file 0 Answers

File Save Location (PC, Mac, iOS, Android, etc) 1 Answer

How do I save and retrieve ordered data? Can I do this with an array? 1 Answer


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges