packages/library/odin_studying
o

odin_studying

ba9ea1blibrary

some odin examples

0 stars0 forksUnknownupdated 19 hours ago
Open repo

编译运行

# 进入 raylib 目录
cd raylib

# 运行某个示例(注意:单文件需加 -file 标志)
odin run 01_basic_window.odin -file

# 或者编译后再运行
odin build 01_basic_window.odin -file -out:example.exe
./example.exe

📁 raylib/ 文件夹 - 完成的 12 个 Odin 示例

# 文件 说明 难度
1 01_basic_window.odin 基本窗口 - 创建窗口、清屏、绘制文字 ⭐️☆☆☆
2 02_input_keys.odin 键盘输入 - 方向键移动小球 ⭐️☆☆☆
3 03_input_mouse.odin 鼠标输入 - 鼠标跟随 + 左右中键变色 ⭐️☆☆☆
4 04_basic_shapes.odin 基本形状 - 圆形、矩形、三角形、多边形、线条 ⭐️☆☆☆
5 05_color_palette.odin 颜色调色板 - 显示 raylib 所有默认颜色 ⭐️☆☆☆
6 06_image_loading.odin 图片加载 - 加载纹理并显示(无图片时自动生成棋盘格) ⭐️☆☆☆
7 07_sprite_animation.odin 精灵动画 - 用 RenderTexture 实现帧动画 ⭐️☆☆☆
8 08_text_font_loading.odin 字体加载 - 默认字体 + TTF 外部字体 ⭐️☆☆☆
9 09_collision_detection.odin 碰撞检测 - 矩形-矩形 + 圆形-矩形碰撞 ⭐️☆☆☆
1 10_audio_playing.odin 音频播放 - 音乐播放、暂停、变速 + 动态圆圈动画 ⭐️☆☆☆
1 11_bouncing_ball.odin 弹跳球 - 物理反弹 + 空格暂停 ⭐️☆☆☆
1 12_3d_cube.odin 3D 立方体 - 3D 相机环绕 + 键盘移动 ⭐️☆☆☆

每个示例涵盖的关键 API

每个文件都是独立的、可直接编译运行的,涵盖了 raylib 的以下模块:

  • Core - 窗口、输入、碰撞检测、帧率
  • Shapes - 所有基本形状绘制
  • Textures - 纹理加载、渲染纹理
  • Text - 字体加载、文本格式化
  • Audio - 音频设备、音乐流
  • Models - 3D 相机、立方体、网格

待修复

PS D:\project_code\open_source\odin\raylib> odin run .\10_audio_playing.odin -file      
D:/project_code/open_source/odin/raylib/10_audio_playing.odin(82:47) Error: Cannot assign value 'transmute([]u8)samples' of type '[]u8' to 'rawptr' in a procedure argument 
        ... omMemory(".wav", transmute([]u8)samples, uint(len(samples) * 4)) 
                             ^~~~~~~~~~~~~~~~~~~~~^ 
D:/project_code/open_source/odin/raylib/10_audio_playing.odin(82:71) Error: Cannot assign value 'uint(len(samples) * 4)' of type 'uint' to 'i32' in a procedure argument 
        ... omMemory(".wav", transmute([]u8)samples, uint(len(samples) * 4)) 
                                                     ^~~~~~~~~~~~~~~~~~~~~^ 
Package Info
Version
ba9ea1b
License
Unknown
Author
@anlzou
Type
library
Forks
0
Created
19 hours ago
Updated
19 hours ago
Health
maintained
has releases
has readme
has license
Activity
last 56 weeks