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

Playing videos in gta sa


iLiR
 Share

Recommended Posts

Is there any method (opcode or memory address) that allows you to play movies or short videos on a model in gta sa (Example: play videos in the billboards in Los Santos)? I'm not talking about texture (UV) animation, I mean playing real movies in the game. Edited by ilir
Link to comment
Share on other sites

Hey thanks for the link... does this work inside the game? Like playing videos on a specific object, not like intro movie?
Link to comment
Share on other sites

It's something I've been wanting to try out some day (when I get a chance) by extending the Jumbotrons, which use RenderWare's multirendering technology. It sets the camera, renders what can be seen by the camera (in a much lesser quality and accuracy), stores the buffer, restores the camera and then uses the stored buffer to draw using culling (which is something which one would probably wanna skip when modding it).

 

So it's not too hard to tweak it to show another part of the world (though the performance hit while multirendering in the open world is a concern), but overwriting the buffer with video data would be harder.

 

I bookmarked this function in IDA:

 

0x7230A0 ?rasterCullReflectionBuffer

 

 

I'm assuming it's in charge of storing the raster displayed on the big screen. And a raster is something which we could update with video data. The question is what the performance hit will be. The current jumbotrons hack causes a noticable FPS drop when in range already. It's probably an engine fault, it being pretty damn old now and all, doing stuff like this would be pushing the limits. My plan would be to create a converter for your bog-standard video files to raw data which can be set to the raster much quicker than it could if you were to do all the converting at runtime and see how it goes. It might actually be faster than the jumbotrons if we skip the multirendering process.

 

This is all theory, though. Something I've not had a chance to think of putting into practise since I was working on VJ, which I will be again soon.

 

 

EDIT: @Michael-Knight1: Do you read past replies or do you just post in whatever topics are at the top of the forum?

Link to comment
Share on other sites

That MA you wrote seems like it's rendering a screen using cull line (Like you explained in your great Jumbotrons tutorial smile.gif

So the only thing when can replace with video data is the raster. If we would do that, the fps should be much bigger than the multirendering process. But the real question is, can we replace the raster with a video data? Or can we tweak them using an opcode?

Link to comment
Share on other sites

The raster contains a pixel field, meaning we could rewrite every stored pixel with video data. This would have to be done every frame using the next frame of the video's pixel data. I'm not too familiar with video formats, though, and there are many optimisations in most video formats which would need decoding, which is what makes it a possible FPS-eater.

 

The cull can be skipped, it's not vital. Culling just tells the game where it will render certain things. With the jumbotrons it was required to see the screen once it had been moved, once the culling was altered, though, the game would start rendering the screen by generating the raster using the camera.

Link to comment
Share on other sites

...meaning we could rewrite every stored pixel with video data...

Yeah, but how? Or at least any idea in which way?

Link to comment
Share on other sites

00000000 RwRaster        struc; (sizeof=0x34)00000000 parent          dd ?                   ; offset00000004 cpPixels        dd ?00000008 palette         dd ?0000000C width           dd ?00000010 height          dd ?00000014 depth           dd ?00000018 stride          dd ?0000001C nOffsetX        dw ?0000001E nOffsetY        dw ?00000020 cType           db ?00000021 cFlags          db ?00000022 privateFlags    db ?00000023 cFormat         db ?00000024 originalPixels  dd ?00000028 originalWidth   dd ?0000002C originalHeight  dd ?00000030 oriiginalStride dd ?00000034 RwRaster        ends

 

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.