We are going to launch SC2 on holographic screen – so that you can observe scene from any viewpoint!
To achieve this amazing goal we need to overcome some technical problems.
There are no problems with rendering: we can set DirextX call interception to render different views of stereo image. But if we change the view in this way the engine doesn't know about this change and therefore selection will not work correctly.
Now we’re trying to understand what is possible and what is not possible with mods and scripts:
- Is it possible to set View/Projection matrixes for the camera (axes of this camera are not orthogonal like on the picture below);
- Is it possible to change selection ray when we select objects on scene?
//upload.wikimedia.org/wikipedia/en/5/56/Nehrim-Logo.png" rel="noopener nofollow" target="_blank">http://upload.wikimedia.org/wikipedia/en/5/56/Nehrim-Logo.png" alt="Nehrim? [hate it]" title="Nehrim? [hate it]">
And don't listen to zorbotron, just wait for people more intelligent than us to answer. If they will.
Scripts can't load anything external to the Galaxy VM sandbox.
You can't change projection.
I'll admit I am not sure what you mean by selection ray, but asuming it is a rendering component, no, it cant be changed.
Your project is quite interesting. While I don't have many hopes, your bestoptionis contacting blizzard. If they get interested as well, you might have a chance to natively support it somehow (even if isnt directly and requires hacks on your side).
Currently it is impossible, though if you really wish to pursue this, I would suggest contacting blizzard, Via phone, they never answer emails, Call on the phone and start asking for supervisors until you get up to the top.
You cant set Projection matrixes (However you can set any position for camera dynamically)
I think something could be figured out for selection. (However as projection matrix cant be changed you wont need any change there)
loading any DLL from scripts or implementing your screen with sc2 seems impossible or at least it will lag...
Contacting with Blizzard and asking to help you guys seems the most impossible :D (But it worth a try)
Maybe try http://springrts.com/ Its an Indie 3D RTS game engine, fully made for moding. (Dont know if its possible to implement the stuff you asked there for that game)
I have another proposition.
Game's way to change projection matrices and affect anything that is related (click position, any geometry clipping etc.) is to use camera object. You can search for memory locations of everything that is camera-related and change it respectively for each frame. Most tricky part is to find the exact code location that controls camera and insert a call for previously injected code that will affect this things. Everything can be done at runtime. Less permanent but easier method is to edit the binary.
Rollback Post to RevisionRollBack
To post a comment, please login or register a new account.
Hi. I am CTO of this project:
We are going to launch SC2 on holographic screen – so that you can observe scene from any viewpoint! To achieve this amazing goal we need to overcome some technical problems.
There are no problems with rendering: we can set DirextX call interception to render different views of stereo image. But if we change the view in this way the engine doesn't know about this change and therefore selection will not work correctly. Now we’re trying to understand what is possible and what is not possible with mods and scripts:
- Is it possible to set View/Projection matrixes for the camera (axes of this camera are not orthogonal like on the picture below);
- Is it possible to change selection ray when we select objects on scene?
- Is it possible to load any DLL from scripts?
Thank you for your answers.
Pretty sure the answer is no to everything.
That N logo seems familiar...
//upload.wikimedia.org/wikipedia/en/5/56/Nehrim-Logo.png" rel="noopener nofollow" target="_blank">http://upload.wikimedia.org/wikipedia/en/5/56/Nehrim-Logo.png" alt="Nehrim? [hate it]" title="Nehrim? [hate it]"> And don't listen to zorbotron, just wait for people more intelligent than us to answer. If they will.
EDIT:
I believe so.
zorbotron is actualy right.
Scripts can't load anything external to the Galaxy VM sandbox. You can't change projection. I'll admit I am not sure what you mean by selection ray, but asuming it is a rendering component, no, it cant be changed.
Your project is quite interesting. While I don't have many hopes, your bestoptionis contacting blizzard. If they get interested as well, you might have a chance to natively support it somehow (even if isnt directly and requires hacks on your side).
Go play Antioch Chronicles Remastered!
Also, coming soon, Antioch Episode 3: Thoughts in Chaos!
Dont like mapster's ugly white? Try Mapster's Classic Skin!
@Alevice: Go
Currently it is impossible, though if you really wish to pursue this, I would suggest contacting blizzard, Via phone, they never answer emails, Call on the phone and start asking for supervisors until you get up to the top.
You cant set Projection matrixes (However you can set any position for camera dynamically)
I think something could be figured out for selection. (However as projection matrix cant be changed you wont need any change there)
loading any DLL from scripts or implementing your screen with sc2 seems impossible or at least it will lag...
Contacting with Blizzard and asking to help you guys seems the most impossible :D (But it worth a try)
Maybe try http://springrts.com/ Its an Indie 3D RTS game engine, fully made for moding. (Dont know if its possible to implement the stuff you asked there for that game)
I have another proposition. Game's way to change projection matrices and affect anything that is related (click position, any geometry clipping etc.) is to use camera object. You can search for memory locations of everything that is camera-related and change it respectively for each frame. Most tricky part is to find the exact code location that controls camera and insert a call for previously injected code that will affect this things. Everything can be done at runtime. Less permanent but easier method is to edit the binary.