The Nim GUI/2D framework based on OpenGL and SDL2.

SakiKawasaki 2d21f5f853 update readme.md 4 年之前
.github 5b1b0fbc8b Merge pull request #12 from jiro4989/chore/remove-choosenim-cache 4 年之前
examples 43e11a9a87 update vector3.nim 4 年之前
screenshots 371453ec7d add screenshots folder. 4 年之前
src 2ab28f462e add LineEdit node. 4 年之前
tests 2ab28f462e add LineEdit node. 4 年之前
.gitignore 609d9f42f4 add CollisionShape2D and debug mode. 4 年之前
CODE_OF_CONDUCT.md 621e4f41ee Create CODE_OF_CONDUCT.md 5 年之前
LICENSE eb23f4d1f3 Initial commit 5 年之前
README.md 2d21f5f853 update readme.md 4 年之前
nodesnim.nimble 7fd2ff9b2a global update! :eyes: 4 年之前

README.md

Nodesnim

The Nim GUI/2D framework based on OpenGL and SDL2.

Open Source Love Nim language-plastic License time tracker test

Latest version - 0.0.4

Stable version - 0.0.3

Install

  1. Install this repo
    • nimble install nodesnim or nimble install https://github.com/Ethosa/nodesnim.git
  2. Install dependencies
    • Linux (tested on Ubuntu and Mint):
      • sudo apt install -y freeglut3 freeglut3-dev
      • sudo apt install --fix-missing -y libsdl2-dev libsdl2-image-dev libsdl2-mixer-dev
    • Windows / MacOS:

Features

  • Godot-like node system.
  • Simple usage ```nim import nodesnim

Window("Hello, world!")

var

scene = Scene("Main")
hello = Label()

hello.setText("Hello, world!") hello.setSizeAnchor(1, 1) hello.setTextAlign(0.5, 0.5, 0.5, 0.5) scene.addChild(hello)

addMainScene(scene) windowLaunch() ```

Now available

This section contains links to documentation for all nodes. |Core |Default nodes |Control nodes |2D Nodes |3D Nodes | |:--: |:--: |:--: | :--: |:--: | |Anchor |Node |Control |Node2D |Node3D | |Color |Canvas |ColorRect |Sprite |GeometryInstance| |ColorText|Scene |TextureRect |AnimatedSprite | | |Enums |AudioStreamPlayer|Label |YSort | | |Exceptions| |Button |CollisionShape2D| | |Image | |EditText |Camera2D | | |Input | |RichLabel | | | |Rect2 | |RichEditText | | | |Vector2 | |Box | | | |Circle2 | |HBox | | | |Polygon2| |VBox | | | |AudioStream| |GridBox | | | |Animation | |Scroll | | | |Vector3 | |ProgressBar | | | | | |Slider | | | | | |VProgressBar | | | | | |VSlider | | | | | |Popup | | | | | |TextureButton | | | | | |TextureProgressBar| | | | | |Counter | | | | | |Switch | | | | | |SubWindow | | | | | |LineEdit | | |

Debug mode

For use debug mode you should compile with -d:debug or --define:debug, e.g. nim c -r -d:debug main.nim.

Export

Use the Nim compiler user guide for export to the other OS.

  • CrossPlatform export for Windows (tested on Windows 7 x64 and Windows 10 x64)
    • nim c -d:mingw -d:release --opt:speed --noNimblePath file.nim
    • put Runtime binaries in the folder with the program.

Screenshots

F.A.Q

Q: Where can I see examples?
A: You can see this in the tests or examples folder.

Q: Where can I read the docs?
A: You can read docs here