Linking camera and display block

    Joined
    Mar 31, 2015
    Messages
    281
    Reaction score
    95
    • Purchased!
    • Legacy Citizen 5
    I had an interesting idea awhile ago: Tie the camera and display blocks together. This would allow you to create view ports to see what's happening inside of your structure, whether it be a base, planet, or a ship. This would make bridge/command center planing more interesting as well, and useful. The display blocks should still allow text to be displayed, even if attached to a camera

    The client should be able to disable these displays since they could cause extra load on the client end to render the extra view ports.

    To make multiple cameras more useful in this setup, they should be detachable from the ship's core.
     
    • Like
    Reactions: alterintel
    Joined
    Feb 22, 2014
    Messages
    68
    Reaction score
    9
    • Legacy Citizen
    • Legacy Citizen 2
    yes yes yes, this would be awesome. linking display blocks together to form a big screen and linking them all to a camera should be able to display a more detailed view of outside
     
    Joined
    Nov 6, 2014
    Messages
    3
    Reaction score
    0
    I agree but it would add a lot more server/computer load. Plus it wouldn't make much of a difference if you need to be inside the core to pilot the ship.
     

    Valiant70

    That crazy cyborg
    Joined
    Oct 27, 2013
    Messages
    2,189
    Reaction score
    1,168
    • Thinking Positive
    • Purchased!
    • Legacy Citizen 4
    This would be cool, but the image would have to be very low resolution to prevent MAJOR lag spikes when looking at it. Even then servers might have to add rules about lag-bombing low-end computers by filling walls with the things.
     

    Blaza612

    The Dog of Dissapointment
    Joined
    Nov 16, 2013
    Messages
    787
    Reaction score
    209
    • Legacy Citizen 4
    This would be cool, but the image would have to be very low resolution to prevent MAJOR lag spikes when looking at it. Even then servers might have to add rules about lag-bombing low-end computers by filling walls with the things.
    As Valiant said, lag would be a serious issue (FPS/Client lag) however, could be easily stopped, if possible. The only reason lag would be a thing is because it's having to render multiple fields of view at once, meaning that to eliminate lag we would have to make the render only happen once. I'm not sure about this, but maybe taking an image of some sort with the camera and loading that onto the monitors in real-time might help. The resolution of the images will not help in the slightest, so they can be as big as Schine wants them to be, which would probably be based on the size of the texture pack, so low-end computers using a lower resolution texture pack wouldn't have to worry about this.
     

    jayman38

    Precentor-Primus, pro-tempore
    Joined
    Jul 13, 2014
    Messages
    2,518
    Reaction score
    787
    • Purchased!
    • Thinking Positive
    • Legacy Citizen 4
    As Valiant said, lag would be a serious issue (FPS/Client lag) however, could be easily stopped, if possible. The only reason lag would be a thing is because it's having to render multiple fields of view at once, meaning that to eliminate lag we would have to make the render only happen once. I'm not sure about this, but maybe taking an image of some sort with the camera and loading that onto the monitors in real-time might help. The resolution of the images will not help in the slightest, so they can be as big as Schine wants them to be, which would probably be based on the size of the texture pack, so low-end computers using a lower resolution texture pack wouldn't have to worry about this.
    I'm not sure your presumptions are correct. I believe StarMade makes use of GL. Newer techniques might be available to do what you are proposing, but the classical way to link cameras and monitors in games follows this render path:
    1. Render the camera's point of view to an image in the framebuffer.
    2. Optional step: write additional image information to the framebuffer, such as any text you want to overlay on the camera image.
    3. Write that framebuffer to a texture object.
    4. Apply that texture object to the monitor model.

    Since we are talking about the camera output being placed in the texture space, we are also talking about video memory which is limited, so the camera output image should definitely have a finite, carefully defined resolution, to avoid overloading the video memory.

    Citation if you would like to learn more:
    http://www.mbsoftworks.sk/index.php?page=tutorials&series=1&tutorial=19
     
    Joined
    Mar 31, 2015
    Messages
    281
    Reaction score
    95
    • Purchased!
    • Legacy Citizen 5
    First off, this wouldn't cause server lag. The client already knows where all the objects are, so the client would handle the drawing of the objects in the viewport-- the server would have no interaction with this. Yes, it could cause a FPS issue for slower machines, but that's also why I said that the client should be able to disable displaying camera viewports on displays to avoid this.

    The default view is from the ship's core, which can be switched to a camera. Now, if your camera is behind glass, and positioned back aways, you could have it instead view a screen instead of looking out a window. Now you have your cockpit view, with the option of adding extra screens for viewing what's happening on the side of your spacecraft or rear of your spacecraft.

    This would make bridge crafting inside of a ship far more interesting... especially if displays can be linked together to make a larger display.
     

    jayman38

    Precentor-Primus, pro-tempore
    Joined
    Jul 13, 2014
    Messages
    2,518
    Reaction score
    787
    • Purchased!
    • Thinking Positive
    • Legacy Citizen 4
    ... especially if displays can be linked together to make a larger display.
    I think I read somewhere that the dev team was interested in creating larger group displays. That was a while ago, but it's still a great idea.