Difference between revisions of "Development"

From WowWiki
Jump to navigation Jump to search
m
(Link CubiOS Rust SDK repo (WowBot))
 
(12 intermediate revisions by 6 users not shown)
Line 1: Line 1:
== Developing WOWCube-specific applications ==
+
Developing WOWCube-specific applications
  
 
  If you have a coding question, consider visiting '''#how-to''' in our Discord's Code Desk (https://discord.gg/kCay3Rdbst) for getting help from fellow developers and official support both.
 
  If you have a coding question, consider visiting '''#how-to''' in our Discord's Code Desk (https://discord.gg/kCay3Rdbst) for getting help from fellow developers and official support both.
----
 
  
WOWCube offers several programming paradigms. Development of specialized applications (cubelets) can be carried out:
 
  
 +
{{notice|'''Official API reference: [[SDK 6.3]].''' The current SDK 6.3 API — one page per module (PAWN now; C++ and Rust coming). '''Start here → [[SDK 6.3]].'''}}
  
:1. ...in PAWN. Pawn language is a derivative of “Small C” (See [https://github.com/compuphase/pawn/blob/master/doc/Pawn_Language_Guide.pdf Pawn_Language_Guide.pdf], and [https://wiki.alliedmods.net/Pawn_Tutorial Pawn Tutorial])
+
 
 +
WOWCube offers several programming paradigms.
 +
{{APIBox
 +
|name=WOWCube runtime API
 +
|runtime=PAWN (SDK 6.3)
 +
|purpose=Cube-specific drawing, topology, input, sound and storage functions.
 +
|constraints=See the per-module pages under [[SDK 6.3]].
 +
}}
 +
Development of specialized applications (cubelets) can be carried out:
 +
 
 +
 
 +
===in PAWN. Pawn language is a derivative of “Small C”===
 +
(See [https://github.com/compuphase/pawn/blob/master/doc/Pawn_Language_Guide.pdf Pawn_Language_Guide.pdf], and [https://wiki.alliedmods.net/Pawn_Tutorial Pawn Tutorial])
 +
:: [[SDK 6.3|'''SDK 6.3 PAWN API''' — current, official]]
 
:: [[API|WOWCube PAWN API (Cube-specific Pawn functions)]]
 
:: [[API|WOWCube PAWN API (Cube-specific Pawn functions)]]
 +
:: [[PawnProgrammingNotes|(New) "How To's" of Pawn Programming]]
  
 
+
===C/C++/Rust using [https://webassembly.org/ WebAssembly] ( based on wasm3 )===
:2. ...using [https://webassembly.org/ WebAssembly] ( based on wasm3 )  
 
 
:: [[WASM|WOWCube WASM API (Cube-specific Wasm functions)]]
 
:: [[WASM|WOWCube WASM API (Cube-specific Wasm functions)]]
 +
:: [https://github.com/wowcube/CubiOS_Rust_SDK CubiOS Rust SDK on GitHub] ''(experimental)''
  
  
:3. <code>[obsolete]</code> <s>Development of programs for smartphones (or other external devices) transmitting data and graphics to the cube as to an external device, according to the protocol BlueTooth. We call this mode "Projector"</s> <code>[/obsolete]</code>
+
===also with our DevKit===
  
 +
:: [[SDK|WOWCube DevKit Guide]]
  
:4. ...also with our DevKit
+
:WOWCube DevKit is the multi-platform software bundle that allows developers to streamline the programming workflow for WOWCube device using only Mac/PC or a laptop, before testing games/apps on a physical cube.
 +
:Utilizing the VSC plugin included in the DevKit, apps can be transferred to a cube via BT 4.2 as well.
  
:: [[SDK|WOWCube DevKit Guide]]
 
  
:WOWCube DevKit is the software bundle we develop that allows you to streamline the workflow programming games/applications for WOWCube using only laptop/PC, before testing it on a physical device.
+
===[[Errors description|WOWCube Errors description]]===
:Utilizing VSC plugin included in the DevKit then, apps can be transferred to a cube via Bluetooth 4.2.
+
===[[Application memory description|Application memory description]]===
:Currently there are two WOWCube DevKit versions developed in parallel: for Windows and MacOS environments.
 

Latest revision as of 10:41, 26 July 2026

Developing WOWCube-specific applications

If you have a coding question, consider visiting #how-to in our Discord's Code Desk (https://discord.gg/kCay3Rdbst) for getting help from fellow developers and official support both.


Official API reference: SDK 6.3. The current SDK 6.3 API — one page per module (PAWN now; C++ and Rust coming). Start here → SDK 6.3.


WOWCube offers several programming paradigms.

API reference: WOWCube runtime API

  • Runtime: PAWN (SDK 6.3)
  • Purpose: Cube-specific drawing, topology, input, sound and storage functions.
  • Constraints: See the per-module pages under SDK 6.3.
Development of specialized applications (cubelets) can be carried out:


in PAWN. Pawn language is a derivative of “Small C”

(See Pawn_Language_Guide.pdf, and Pawn Tutorial)
SDK 6.3 PAWN API — current, official
WOWCube PAWN API (Cube-specific Pawn functions)
(New) "How To's" of Pawn Programming

C/C++/Rust using WebAssembly ( based on wasm3 )

WOWCube WASM API (Cube-specific Wasm functions)
CubiOS Rust SDK on GitHub (experimental)


also with our DevKit

WOWCube DevKit Guide
WOWCube DevKit is the multi-platform software bundle that allows developers to streamline the programming workflow for WOWCube device using only Mac/PC or a laptop, before testing games/apps on a physical cube.
Utilizing the VSC plugin included in the DevKit, apps can be transferred to a cube via BT 4.2 as well.


WOWCube Errors description

Application memory description