Sinen is a toolkit for creative coding.
- Intuitive writing in the Lua programming language
- Sinen is Written in C++
- Using Vulkan API
- Lightweight
https://astomih.github.io/sinen
local hello_texture = {}
local hello_font = {}
local hello_drawer = {}
-- Create a texture
hello_texture = texture()
-- Create a draw2D
hello_drawer = draw2d(hello_texture)
-- Create a font
hello_font = font()
-- Load a font from file(96px)
hello_font:load("mplus/mplus-1p-medium.ttf", 96)
-- Render text to texture
hello_font:render_text(hello_texture, "Hello Sinen World!",
color(1, 1, 1, 1))
-- Set scale to texture size
hello_drawer.scale = hello_texture:size()
function update()
-- Draw
hello_drawer:draw()
end
MIT Lisence
- Dear ImGui
- Lua
- Sol2
- mojoAL
- rapidjson
- SDL2(image,mixer,ttf)
- Vulkan 1.1
- VulkanMemoryAllocator
- ImGuiColorTextEdit
- ImGuizmo
- imgui-filebrowser
- imgui_markdown
- Sinen Core
- CMake 3.7 or later
- Ninja
- C++20 compiler
- Vulkan SDK
git clone https://github.com/astomih/sinen.git
cd sinen
git submodule update --init --recursive
Run "build/generate_vs2022.bat" and open&build the generated solution file(build/msvc/.).
WIP
cmake -B build/linux -DEXTERNAL_ALL_BUILD=ON -DCMAKE_BUILD_TYPE=Release
cd build && ninja