CCLights2
From ComputerCraft Wiki
CCLights2 is an Open Source Minecraft mod that adds a GPU peripheral, and monitors to suit your need. Unlike CCGPU, this mod does not use OpenGL, but it is Multiplayer Compatible.
Please note; this documentation will always try to stay up to date with the github repo, so it might not fit your build :P
GPU Methods | ||
Returns | Method Name | Description |
nil | gpu.fill() | Fills the current binded texture with the GPU color. NOTE: This method will fully replace the contents of the texture. |
number textureid | gpu.createTexture(number width, number height) | Creates a texture and returns the texture id. This function will error if there is no more room for the texture. |
number freememory | gpu.getFreeMemory() | Returns the amount of free memory that the GPU has to use. This can be expanded by right clicking the GPU with RAM. |
number totalmemory | gpu.getTotalMemory() | Returns the amount of memory that the GPU has. This can be expanded by right clicking the GPU with RAM. |
number usedmemory | gpu.getUsedMemory() | Returns the amount of memory that the GPU is using. This value is changed by allocating textures with gpu.createTexture and freeing textures with gpu.freeTexture. |
nil | gpu.bindTexture(number textureid) | Bind the texture at textureid, this method will error if invalid values are used. Texture 0 is the screen. |
nil | gpu.plot(number x, number y) | Sets the pixel on x,y to the the GPU's current color. (Remember, all drawing command work on the current binded texture) |
nil | gpu.drawTexture(number textureid, number x, number y[, number startX, number startY, number width, number height]) | Draws the texture textureid to x and y, and if startX, startY, width, and height is defined, it will render only that area of the texture. (Remember: You can render the texture to itself) |
nil | gpu.freeTexture(number textureid) | Frees the texture defined by textureid |
nil | gpu.line(number x0, number y0, number x1, number y1) | Draws a line from x0 and y0 to x1 and y1. |
number width, number height | gpu.getSize([ number textureid]) | Returns the texture size of textureid or the current binded texture. Using texture 0 will give you the screen size. |
number red, number green, number blue, number alpha | gpu.getPixels(number x, number y) | Returns the color of the pixel in the currently binded texture. Out of bound pixels have an undefined side effect. |
nil | gpu.rectangle(number x, number y, number width, number height) | Draws the outline of a rectangle from x, y to x+width, y+height. |
nil | gpu.filledRectangle(number x, number y, number width, number height) | Draws a filled rectangle from x, y to x+width, y+height. |
nil | gpu.setColor(number red, number green, number blue[, number alpha]) | Sets the GPU's current drawing color |
number slot | gpu.getBindedTexture() | Gets the GPU's currently binded texture |
nil | gpu.setPixelsRaw(number width, number height, number x, number y, Optional: number red,number green,number blue) | takes an array and writes each pixel to the image. this method is accelerated by java and is faster than multiple gpu.plot calls. |
nil | gpu.setPixelsRawYX(number width, number height, number x, number y, Optional: number red,number green,number blue) | takes an array and writes each pixel to the image. this method is accelerated by java and is faster than multiple gpu.plot calls. This method will read in the inverse order of setPixelsRaw (each row is first, not columns) |
nil | gpu.flipTextureV() | flips the texture vertically |
numberTextureID, numberWidth, numberHeight | gpu.import(string imagestoredinCC,string file format) | decodes an imagefile and makes it ready for texture binding. |
string filedata | gpu.export(number textureid, string file format) | encodes an imagefile and makes it ready for saving. |
nil | gpu.drawText(string text to write, number x,number y) | writes text from pixel x,y |
number textWidth | gpu.getTextWidth() | Gets Text width |
nil | gpu.setColor(number red,number green,number blue, optional; number alpha) | Sets the GPU's current color |
number red, number green, number blue, number alpha | gpu.getColor() | Gets the GPU's current color |
nil | gpu.translate(number x,number y) | translates the texture in two dimensions |
nil | gpu.rotate(number degrees) | rotates the texture in two dimensions |
nil | gpu.rotateAround(number degrees,number x,number y) | rotates the texture around pixel x,y |
nil | gpu.scale(number x-axis size,number y-axis size) | scales the texture to specs |
nil | gpu.push() | store transformation commands from here on and push them to the storestack |
nil | gpu.pop() | process stored transformation input |
table | gpu.getMonitor().getResolution() | Get the monitor resolution w/h |
nil | gpu.blur(number blur amount) | makes the texture blurry |
nil | gpu.startFrame() | Starts a new frame (use this if you plan to draw large amounts of data) |
nil | gpu.endFrame() | ends the frame (ends the frame and sends the data, use this if you plan to draw large amounts of data) |
nil | gpu.clearRect(number x, number y, number width, number height) | Clear rectangle entirely to alpha 255 |
Events | ||
Returns | EventName | Description |
button,x,y, player | monitor_move | The player dragged the mouse while holding in a button |
button,x,y,player | monitor_down | The player began a click on the monitor |
button,x,y,player | monitor_up | The player stopped a click on the monitor |
button,x,y,player | monitor_down | The player began a click on the monitor |
string char | char | The player typed a character |
string key | key | The player mashed the keyboard |
table of imagedata, importable | tablet_image | The player took a picture with the tablet |