ToyCode 专为 C++ 初学者、个人开发者和独立创作者设计。通过简洁的属性语法、自动资源管理和直观的事件绑定,让您专注于创意本身。
专为高效开发与流畅体验而设计,摆脱复杂底层,专注于创意实现。
以 App a; 作为程序统一入口,通过 a.AddButton()、a.AddImage() 等直观接口创建对象。坐标、大小、颜色和文字均采用现代属性式语法,输入对象名称和 . 即可轻松提示并发现常用功能。
内置 Label、Button、TextBox、Image、Grid、StackPanel 等常见界面控件;同时提供精灵动画、粒子特效、音频、动作系统、输入处理和碰撞检测,一套接口无缝兼顾桌面工具与 2D 游戏。
界面与游戏对象由所属容器统一管理,父对象销毁时子对象自动级联释放。图片、字体与音频资源由引擎统一缓存与清理,无需手动调用 delete、Destroy() 或 Dispose()。
全面支持 PNG、JPG、SVG、TTF 字体及 WAV、OGG、MP3 音频。资源既可存放在运行目录也可打包进 ZIP 资源包。以 PC 为起点,并为后续发布至 WebAssembly 网页端及 Android 平台预留跨平台架构。
感受 ToyCode 在 UI 界面构建与 2D 游戏角色控制中的极致优雅。
#include <ToyCode.h> using namespace toy; int main() { App a("ToyCode UI 示例"); a.Size = {1920, 1080}; auto title = a.AddLabel("欢迎使用 ToyCode"); title.Position = {560, 180}; title.Size = {800, 100}; title.FontSize = 52; title.TextAlign = TextAlign.Center; auto result = a.AddLabel("请点击按钮"); result.Position = {710, 360}; result.Size = {500, 80}; result.FontSize = 30; result.TextAlign = TextAlign.Center; auto button = a.AddButton("开始"); button.Position = {760, 520}; button.Size = {400, 100}; button.CornerRadius = 24; button.HoverOffset = {0, -8}; button.PressedOffset = {2, 2}; button.Click = [](auto e) { result.Text = "你好,ToyCode!"; }; return a.Run(); }
无论是日常桌面工具、独立游戏还是多媒体创意作品,ToyCode 都能轻松驾驭。
利用 Label、Button、TextBox、Image、Grid 和 StackPanel 快速开发计算器、启动器、素材管理器、教学演示程序等小型桌面应用。
依托精灵动画、键鼠输入、音乐音效、粒子系统与碰撞检测,独立制作平台跳跃、射击、解谜、角色扮演等 2D 游戏。
结合 SVG、字体图标、富文本、动画和音频,打造电子绘本、互动课件、小游戏合集等多媒体创意作品。
极简配置,开箱即用,全面支持主流开发环境与跨平台部署。
#include <ToyCode.h> 搭配 using namespace toy;