This is a read-only snapshot of the ComputerCraft forums, taken in April 2020.
Ruffa-Duffa's profile picture

Computerized Cameras

Started by Ruffa-Duffa, 25 January 2013 - 12:40 PM
Ruffa-Duffa #1
Posted 25 January 2013 - 01:40 PM
I've had an idea for a peripheral for a while now and I was wondering if I (with no previous experience in making peripherals in CC) could make it. My idea is little cameras that could transmit video footage (wireless or wired) to a monitor or perhaps a special monitor like peripheral since I don't think monitors can display pixels that well. With a computer or some kinda peripheral you could move the direction the camera is pointing, its zoom, things like that. SImilar to the CCTV mod…http://www.youtube.com/watch?v=0YaxBNezuFk… except completely controlled by computers and without the move too far away and you can't see it bug. Now my question is, would this be hard to do? If someone created it, the uses for it would be amazing. Just imagine a survival map where the spawn is a bedrock cage with 10 or so monitors displaying real time camera footage around the map. Maybe you could even change a monitor from displaying a camera to displaying a player's POV. Still… the more I think about it the more I realize how hard it would be to make especially since I have no experience in peripherals. I'm not even sure if this is the right place to post this… I'm kinda new. So I'm basically asking is this hard to do, and if so is anyone else interested in doing something like it?
Orwell #2
Posted 25 January 2013 - 01:48 PM
This has been asked me a lot of times by people on servers (and in this section as well) and I always wonder, how exactly would you incorporate ComputerCraft into this? It always seemed more suited for an isolated mod.

Edit: also, I believe that you'd need to know your way around in the minecraft code and MCP/Forge in order to achieve this properly. Doesn't mean that you can't learn that though. ;)/>
Ruffa-Duffa #3
Posted 26 January 2013 - 04:41 PM
This has been asked me a lot of times by people on servers (and in this section as well) and I always wonder, how exactly would you incorporate ComputerCraft into this? It always seemed more suited for an isolated mod.

Edit: also, I believe that you'd need to know your way around in the minecraft code and MCP/Forge in order to achieve this properly. Doesn't mean that you can't learn that though. ;)/>

Okay, well then I'm probably not gonna try. I might give it a little shot. I dunno. Anyway, the reason I think this would be great for CC is because in the CCTV mod, you control which cameras are showing by clicking on the screen. If it was CC you control which way the camera is facing, which camera the monitor is showing etc. I just think that being able to have full control of the cameras with CC would work a lot better. I'm sure there's more things you could control if it was CC too. I just said controlling the camera's angle and what the monitor is showing, but there's so much more.
sirdabalot #4
Posted 27 January 2013 - 08:17 AM
I'd vote stick em on turtles so you could make a mining bot you can control for dangerous situations like mining near lava.
Orwell #5
Posted 27 January 2013 - 08:27 AM
I'd vote stick em on turtles so you could make a mining bot you can control for dangerous situations like mining near lava.
The thing is, in order to make a 'mining bot' of it, you need to be able to process the captured images. How would you process a raw image on a CC computer?
sirdabalot #6
Posted 27 January 2013 - 09:37 AM
I'd vote stick em on turtles so you could make a mining bot you can control for dangerous situations like mining near lava.
The thing is, in order to make a 'mining bot' of it, you need to be able to process the captured images. How would you process a raw image on a CC computer?

Pfft, hell if I know, I suck at java, remember? XD
On a serious note, some guy made a GPU peripheral that worked on openGL a bit back, perhaps there's some way to implement that. One would assume that there would be a hell of a lot of work involved, though.
Ruffa-Duffa #7
Posted 27 January 2013 - 01:54 PM
Well for the moment, I can't be bothered to figure out how to do this so anyone else is more then welcome to give it a shot.
Wouto1997 #8
Posted 27 January 2013 - 05:51 PM
get CCTV mod maker + GPU peripheral maker… profit..? ;p
Ruffa-Duffa #9
Posted 28 January 2013 - 03:53 PM
get CCTV mod maker + GPU peripheral maker… profit..? ;p
…Maybe? As I said I am no modder so I have no idea if that would "…profit..". As I said, you're welcome to try. I'm sure if someone made it, it would be a welcome and well-known contribution to our current library of peripherals.
Orwell #10
Posted 28 January 2013 - 04:35 PM
get CCTV mod maker + GPU peripheral maker… profit..? ;p
The GPU peripheral was there just to display graphics. It doesn't explain how you are going to process the captured images with a CC computer and use them in a program. Simply displaying images on a monitor on the peripheral-side isn't that hard, you won't need the GPU peripheral maker for it. :P/>
Frederikam #11
Posted 28 January 2013 - 07:57 PM
First of all:
http://www.minecraftforge.net/wiki/Installation/Source
xuma202 #12
Posted 06 February 2013 - 12:23 PM
As a guy who already had some experience in OpenGL developing I can only say this:

First: With intermediate Java experience only you won't be able to do this.
You have to understand how a GPU renders a frame.

Creating such a camera would require rendering the scene twice, first from the perspective of the camera into a texture or the stencil buffer (should work too) second from the perspective of Steve using the stencil buffer/the texture on the Monitor.

Whenever you have the camera at a spot where it can see the Monitor, on which it's image should be rendered you'll get a serious problem. The ccTV mod was only rendering the Monitor as a black quad (if I remember correctly) but if you'd like to achieve something more realistic you'd have to render it recursively (like Valve did it for Portal). This will dramatically influence the render time!

All in all I can conclude creating such a camera is very difficult because you don't only need much experience in Java and OpenGL but you'd also have to change the rendering progress completely.
Though I at least got an idea of how it has to be done I probably can't do it.

Chris