Jump to content
    1. Welcome to GTAForums!

    1. GTANet.com

    1. GTA Online

      1. Los Santos Drug Wars
      2. Updates
      3. Find Lobbies & Players
      4. Guides & Strategies
      5. Vehicles
      6. Content Creator
      7. Help & Support
    2. Red Dead Online

      1. Blood Money
      2. Frontier Pursuits
      3. Find Lobbies & Outlaws
      4. Help & Support
    3. Crews

    1. Grand Theft Auto Series

      1. Bugs*
      2. St. Andrews Cathedral
    2. GTA VI

    3. GTA V

      1. Guides & Strategies
      2. Help & Support
    4. GTA IV

      1. The Lost and Damned
      2. The Ballad of Gay Tony
      3. Guides & Strategies
      4. Help & Support
    5. GTA San Andreas

      1. Classic GTA SA
      2. Guides & Strategies
      3. Help & Support
    6. GTA Vice City

      1. Classic GTA VC
      2. Guides & Strategies
      3. Help & Support
    7. GTA III

      1. Classic GTA III
      2. Guides & Strategies
      3. Help & Support
    8. Portable Games

      1. GTA Chinatown Wars
      2. GTA Vice City Stories
      3. GTA Liberty City Stories
    9. Top-Down Games

      1. GTA Advance
      2. GTA 2
      3. GTA
    1. Red Dead Redemption 2

      1. PC
      2. Help & Support
    2. Red Dead Redemption

    1. GTA Mods

      1. GTA V
      2. GTA IV
      3. GTA III, VC & SA
      4. Tutorials
    2. Red Dead Mods

      1. Documentation
    3. Mod Showroom

      1. Scripts & Plugins
      2. Maps
      3. Total Conversions
      4. Vehicles
      5. Textures
      6. Characters
      7. Tools
      8. Other
      9. Workshop
    4. Featured Mods

      1. Design Your Own Mission
      2. OpenIV
      3. GTA: Underground
      4. GTA: Liberty City
      5. GTA: State of Liberty
    1. Rockstar Games

    2. Rockstar Collectors

    1. Off-Topic

      1. General Chat
      2. Gaming
      3. Technology
      4. Movies & TV
      5. Music
      6. Sports
      7. Vehicles
    2. Expression

      1. Graphics / Visual Arts
      2. GFX Requests & Tutorials
      3. Writers' Discussion
      4. Debates & Discussion
    1. Announcements

    2. Support

    3. Suggestions

Ray casting/Collision detection?


LostDerp
 Share

Recommended Posts

Is there anyway to do any trace to find where there's collision within a line of sight? Or is there anyway to get the collision at a certain point?

Link to comment
Share on other sites

  • 2 weeks later...

There is no cheap way I know of. There are a number of ways though, some of which I've tried. The best I've come up with:

 

Asynchronous method

Create a new class which inherits the GTA.Timer class. Give it a GTA.Object property - this will be used for the col-detection. Upon creating the tracer object, create a small object (CJ_PROP_GRENADE works well) at the specified startposition. Give the object a specific velocity, the direction of which should be equal to the search direction, but the size (speed) should always be constant.

 

In the OnTickEvent of the class, set the object's velocity to the specified one. However, before you do so, check the current velocity against the 'ideal' velocity. If the velocity has changed too much (slowed down, change in velocity-direction), there has been a collision.

 

Save the object's coordinates and call the callback specified when creating the tracer object.

 

Pros:

- asynchronous, thus non-blocking

- no search-length / distance limit

 

Cons:

- relatively slow (~0.5 s / search: unsuitable for realtime tracing).

 

 

Something else you could try is hooking DirectX and using some D3D function (though I don't have a lot of experience with that. Hooking D3D is pretty easy though)

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • 1 User Currently Viewing
    0 members, 0 Anonymous, 1 Guest

×
×
  • Create New...

Important Information

By using GTAForums.com, you agree to our Terms of Use and Privacy Policy.