Difference between revisions of "CCLights2"
From ComputerCraft Wiki
(sort docs) |
(update docs) |
||
Line 1: | Line 1: | ||
[http://www.computercraft.info/forums2/index.php?/topic/10216-wip-cclights2-opensource-now-on-github/ 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. | [http://www.computercraft.info/forums2/index.php?/topic/10216-wip-cclights2-opensource-now-on-github/ 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 | ||
<table style="width: 100%; border: solid 1px black; margin: 2px; border-spacing: 0px;"> | <table style="width: 100%; border: solid 1px black; margin: 2px; border-spacing: 0px;"> | ||
<tr> | <tr> | ||
Line 28: | Line 29: | ||
<tr> | <tr> | ||
− | <td colspan="2" style="font-weight: bold; font-size: large; padding-bottom: .3em; border-bottom: solid #C9C9C9 1px; background: #D3FFC2; line-height:28px;">[[File:Grid_disk.png|24px]] CCLights2 Monitors</td> | + | <td colspan="2" style="font-weight: bold; font-size: large; padding-bottom: .3em; border-bottom: solid #C9C9C9 1px; background: #D3FFC2; line-height:28px;">[[File:Grid_disk.png|24px]] CCLights2 Monitors and ram</td> |
</tr> | </tr> | ||
Line 56: | Line 57: | ||
<td style="border-top: solid #C9C9C9 1px; padding: .4em;"> | <td style="border-top: solid #C9C9C9 1px; padding: .4em;"> | ||
− | An external Monitor. It | + | An external Monitor. It supports a resolution up to 512x288. |
{{Crafting grid | {{Crafting grid | ||
Line 63: | Line 64: | ||
|A3=glass pane |B3=glass pane |C3=glass pane | |A3=glass pane |B3=glass pane |C3=glass pane | ||
|Output=CCLights2 External Monitor | |Output=CCLights2 External Monitor | ||
+ | |Output-link=CCLights2 | ||
+ | |B2-link=CCLights2 | ||
+ | }} | ||
+ | </td> | ||
+ | </tr> | ||
+ | <tr style="background-color: #FFFFFF;"><td style="border-top: solid #C9C9C9 1px; padding: .4em;">TabletTransciever</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;"> | ||
+ | |||
+ | The basestation for the tablet, CONNECT YOUR TABLETS HERE! | ||
+ | |||
+ | {{Crafting grid | ||
+ | |B1=Redstone | ||
+ | |A2=Redstone |B2=CCLights2 Monitor |C2=Redstone | ||
+ | |B3=Redstone | ||
+ | |Output=CCLights2 TabletTransciever | ||
|Output-link=CCLights2 | |Output-link=CCLights2 | ||
|B2-link=CCLights2 | |B2-link=CCLights2 | ||
Line 78: | Line 94: | ||
|A2=Redstone |C2=Redstone | |A2=Redstone |C2=Redstone | ||
|A3=Gold Ingot |B3=Gold Ingot |C3=Gold Ingot | |A3=Gold Ingot |B3=Gold Ingot |C3=Gold Ingot | ||
+ | |Output=CCLights2 Ram | ||
+ | |Output-link=CCLights2 | ||
+ | }} | ||
+ | </td> | ||
+ | </tr> | ||
+ | <tr style="background-color: #E8E8E8;"><td style="border-top: solid #C9C9C9 1px; padding: .4em;">RAM</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;"> | ||
+ | |||
+ | Yep. You can craft more Ram... with ram! (double the capacity up to a maximum of 8k!) | ||
+ | |||
+ | {{Crafting grid | ||
+ | |A1=CCLights2 Ram |B1=CCLights2 Ram | ||
|Output=CCLights2 Ram | |Output=CCLights2 Ram | ||
|Output-link=CCLights2 | |Output-link=CCLights2 | ||
Line 143: | Line 171: | ||
</tr> | </tr> | ||
<tr style="background-color: #FFFFFF;"> | <tr style="background-color: #FFFFFF;"> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
<td style="border-top: solid #C9C9C9 1px; padding: .4em;">{{type|nil}}</td> | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">{{type|nil}}</td> | ||
<td style="border-top: solid #C9C9C9 1px; padding: .4em;">gpu.plot({{type|number}} x, {{type|number}} y)</td> | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">gpu.plot({{type|number}} x, {{type|number}} y)</td> | ||
− | <td style="border-top: solid #C9C9C9 1px; padding: .4em;"> | + | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">Sets the pixels from x to y to the the GPU's current color. (Remember, all drawing command work on the current binded texture)</td> |
− | + | ||
</tr> | </tr> | ||
<tr style="background-color: #FFFFFF;"> | <tr style="background-color: #FFFFFF;"> | ||
Line 170: | Line 193: | ||
<tr style="background-color: #FFFFFF;"> | <tr style="background-color: #FFFFFF;"> | ||
<td style="border-top: solid #C9C9C9 1px; padding: .4em;">{{type|number}} width, {{type|number}} height</td> | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">{{type|number}} width, {{type|number}} height</td> | ||
− | <td style="border-top: solid #C9C9C9 1px; padding: .4em;"> | + | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">gpu.getSize([ {{type|number}} textureid])</td> |
<td style="border-top: solid #C9C9C9 1px; padding: .4em;">Returns the texture size of <var>textureid</var> or the current binded texture. Using texture 0 will give you the screen size.</td> | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">Returns the texture size of <var>textureid</var> or the current binded texture. Using texture 0 will give you the screen size.</td> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
</tr> | </tr> | ||
<tr style="background-color: #FFFFFF;"> | <tr style="background-color: #FFFFFF;"> | ||
<td style="border-top: solid #C9C9C9 1px; padding: .4em;">{{type|number}} red, {{type|number}} green, {{type|number}} blue, {{type|number}} alpha</td> | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">{{type|number}} red, {{type|number}} green, {{type|number}} blue, {{type|number}} alpha</td> | ||
− | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">gpu. | + | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">gpu.getPixels({{type|number}} x, {{type|number}} y)</td> |
<td style="border-top: solid #C9C9C9 1px; padding: .4em;">Returns the color of the pixel in the currently binded texture. Out of bound pixels have an undefined side effect.</td> | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">Returns the color of the pixel in the currently binded texture. Out of bound pixels have an undefined side effect.</td> | ||
</tr> | </tr> | ||
Line 198: | Line 211: | ||
<td style="border-top: solid #C9C9C9 1px; padding: .4em;">Draws a filled rectangle from x, y to x+width, y+height.</td> | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">Draws a filled rectangle from x, y to x+width, y+height.</td> | ||
</tr> | </tr> | ||
− | + | <tr style="background-color: #FFFFFF;"> | |
<td style="border-top: solid #C9C9C9 1px; padding: .4em;">{{type|nil}}</td> | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">{{type|nil}}</td> | ||
<td style="border-top: solid #C9C9C9 1px; padding: .4em;">gpu.setColor({{type|number}} red, {{type|number}} green, {{type|number}} blue[, {{type|number}} alpha])</td> | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">gpu.setColor({{type|number}} red, {{type|number}} green, {{type|number}} blue[, {{type|number}} alpha])</td> | ||
<td style="border-top: solid #C9C9C9 1px; padding: .4em;">Sets the GPU's current drawing color</td> | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">Sets the GPU's current drawing color</td> | ||
</tr> | </tr> | ||
− | + | <tr style="background-color: #FFFFFF;"> | |
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">{{type|number}} slot</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">gpu.getBindedTexture()</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">Gets the GPU's currently binded texture</td> | ||
+ | </tr> | ||
+ | <tr style="background-color: #FFFFFF;"> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">{{type|nil}}</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">gpu.setPixelsRaw({{type|number}} width, {{type|number}} height, {{type|number}} x, {{type|number}} y, Optional: {{type|number}} red,{{type|number}} green,{{type|number}} blue)</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">Sets pixel to specs</td> | ||
+ | </tr> | ||
+ | <tr style="background-color: #FFFFFF;"> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">{{type|nil}}</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">gpu.setPixelsRawYX({{type|number}} width, {{type|number}} height, {{type|number}} x, {{type|number}} y, Optional: {{type|number}} red,{{type|number}} green,{{type|number}} blue)</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">Sets pixel to specs?!</td> | ||
+ | </tr> | ||
+ | <tr style="background-color: #FFFFFF;"> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">{{type|nil}}</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">gpu.flipTextureV()</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">flips the texture vertically</td> | ||
+ | </tr> | ||
+ | <tr style="background-color: #FFFFFF;"> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">{{type|nil}}</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">gpu.import({{type|string}} path/to/imagefile,{{type|string}} file format)</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">decodes an imagefile and makes it ready for texture binding.</td> | ||
+ | </tr> | ||
+ | <tr style="background-color: #FFFFFF;"> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">{{type|nil}}</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">gpu.export({{type|number}} textureid, {{type|string}} file format)</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">encodes an imagefile and makes it ready for saving.</td> | ||
+ | </tr> | ||
+ | <tr style="background-color: #FFFFFF;"> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">{{type|nil}}</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">gpu.drawText({{type|string}} text to write, {{type|number}} x,{{type|number}} y)</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">writes text from pixel x,y</td> | ||
+ | </tr> | ||
+ | <tr style="background-color: #FFFFFF;"> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">{{type|number}} textWidth</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">gpu.getTextWidth()</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">Gets Text width</td> | ||
+ | </tr> | ||
+ | <tr style="background-color: #FFFFFF;"> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">{{type|nil}}</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">gpu.setColor({{type|number}} red,{{type|number}} green,{{type|number}} blue, optional; {{type|number}} alpha)</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">Sets the GPU's current color</td> | ||
+ | </tr> | ||
+ | <tr style="background-color: #FFFFFF;"> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">{{type|number}} red, {{type|number}} green, {{type|number}} blue, {{type|number}} alpha</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">gpu.getColor()</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">Gets the GPU's current color</td> | ||
+ | </tr> | ||
+ | <tr style="background-color: #FFFFFF;"> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">{{type|nil}}</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">gpu.transelate({{type|number}} x,{{type|number}} y)</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">transelates the texture</td> | ||
+ | </tr> | ||
+ | <tr style="background-color: #FFFFFF;"> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">{{type|nil}}</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">gpu.rotate({{type|number}} degrees)</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">rotates the texture</td> | ||
+ | </tr> | ||
+ | <tr style="background-color: #FFFFFF;"> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">{{type|nil}}</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">gpu.rotateAround({{type|number}} degrees,{{type|number}} x,{{type|number}} y)</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">rotates the texture around pixel x,y</td> | ||
+ | </tr> | ||
+ | <tr style="background-color: #FFFFFF;"> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">{{type|nil}}</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">gpu.scale({{type|number}} x-axis size,{{type|number}} y-axis size)</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">scales the texture to specs</td> | ||
+ | </tr> | ||
+ | <tr style="background-color: #FFFFFF;"> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">{{type|nil}}</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">gpu.push()</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">store commands from here on and do nothing with them (input stored)</td> | ||
+ | </tr> | ||
+ | <tr style="background-color: #FFFFFF;"> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">{{type|nil}}</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">gpu.pop()</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">process stored input</td> | ||
+ | </tr> | ||
+ | <tr style="background-color: #FFFFFF;"> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">{{type|nil}}</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">gpu.push()</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">store commands from here on and do nothing with them (input stored)</td> | ||
+ | </tr> | ||
+ | <tr style="background-color: #FFFFFF;"> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;"></td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">gpu.getMonitor()</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">Get monitor object</td> | ||
+ | </tr> | ||
+ | <tr style="background-color: #FFFFFF;"> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">{{type|nil}}</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">gpu.blur({{type|number}} blur amount)</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">makes the texture blurry</td> | ||
+ | </tr> | ||
+ | <tr style="background-color: #FFFFFF;"> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">{{type|nil}}</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">gpu.startFrame()</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">Starts a new frame</td> | ||
+ | </tr> | ||
+ | <tr style="background-color: #FFFFFF;"> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">{{type|nil}}</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">gpu.endFrame()</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">ends the frame</td> | ||
+ | </tr> | ||
+ | <tr style="background-color: #FFFFFF;"> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">{{type|nil}}</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">gpu.clearRect({{type|number}} x, {{type|number}} y, {{type|number}} width, {{type|number}} height)</td> | ||
+ | <td style="border-top: solid #C9C9C9 1px; padding: .4em;">idk</td> | ||
+ | </tr> | ||
</table> | </table> | ||
[[Category:User Created Peripherals]] | [[Category:User Created Peripherals]] |
Revision as of 18:46, 21 January 2014
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 pixels from x to 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) | Sets pixel to specs |
nil | gpu.setPixelsRawYX(number width, number height, number x, number y, Optional: number red,number green,number blue) | Sets pixel to specs?! |
nil | gpu.flipTextureV() | flips the texture vertically |
nil | gpu.import(string path/to/imagefile,string file format) | decodes an imagefile and makes it ready for texture binding. |
nil | 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.transelate(number x,number y) | transelates the texture |
nil | gpu.rotate(number degrees) | rotates the texture |
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 commands from here on and do nothing with them (input stored) |
nil | gpu.pop() | process stored input |
nil | gpu.push() | store commands from here on and do nothing with them (input stored) |
gpu.getMonitor() | Get monitor object | |
nil | gpu.blur(number blur amount) | makes the texture blurry |
nil | gpu.startFrame() | Starts a new frame |
nil | gpu.endFrame() | ends the frame |
nil | gpu.clearRect(number x, number y, number width, number height) | idk |