首页 > 其他分享 >使用 Rust 开发一个微型游戏

使用 Rust 开发一个微型游戏

时间:2023-05-26 19:22:29浏览次数:44  
标签:mut 微型 游戏 self GameMode ctx player fn Rust

使用 Rust 构建微型游戏 -- 用于理解游戏开发

一、 创建游戏

Agenda

  • 建立项目
  • 实现 Game loop
  • 不同的游戏模式
  • 添加玩家
  • 添加障碍和计分
  • 汇总

理解 Game loop

为了让游戏流畅、顺滑的运行,需要使用 Game loop

Game loop:

  • 初始化窗口、图形和其它资源
  • 每当屏幕刷新(通常是每秒 30、60或更多次),它都会运行
  • 每次通过循环,它都会调用游戏的 tick() 函数

Game loop

开始 -> 配置 App、Window 和图形 -> Poll (轮询 OS 监听输入状态 -> 调用 tick() 函数 -> 更新屏幕 -> 停止? -> 退出

游戏引擎

  • 游戏引擎用来处理平台特定的部分
  • 以便开发者专心开发游戏

Bracket-Lib (Amethyst Foundation)

Bracket-Lib 是一个 Rust 游戏编程库:

  • 作为简单的教学工具
  • 抽象了游戏开发很多复杂的东西
  • 但保留了相关的概念

Bracket-Lib 包括很多库:

  • 随机数生成、几何、路径寻找、颜色处理、常用算法等

Bracket-terminal

bracket-terminal 是 Bracket-Lib 中负责显示部分

  • 它提供了模拟控制台
  • 可与多种渲染平台配合:
    • 从文本控制台到 Web Assembly
    • 例如:OpenGL、Vulkan、Metal
  • 支持 sprites 和原生 OpenGL 开发

Codepage 437:IBM 扩展 ASCII 字符集

Codepage 437:

  • 来自 Dos PC 上的字符,用于终端输出,除了字母和数字,还提供了一些符号
  • Bracket-lib 会把字符翻译成图形 sprites 并提供一个有限的字符集,字符所展示的是相应的图片
~ via 

标签:mut,微型,游戏,self,GameMode,ctx,player,fn,Rust
From: https://www.cnblogs.com/QiaoPengjun/p/17435616.html

相关文章

  • win10电脑游戏全屏占不满整个屏幕解决方法
    win10电脑游戏全屏占不满整个屏幕解决方法 工具/原料华为MateBookWindows10win10电脑游戏全屏占不满整个屏幕解决方法1按win+r打开并运行,输入regedit,然后按Enter进入注册表编辑器页面;2依次展开以下路径:HEKY_LOCAL_MACHINE/SYSTEM/C......
  • M洞察|“MOBA”还是“MMO”?2023上半年热门手游大盘点来了,拯救你的游戏荒
    2023年Q1中国移动游戏市场整体表现不及预期,实际销售收入为486.94亿元,同比下降19.42%。虽整体有所下滑,但新鲜血液依然迸发强劲。3月22日,一款玩法轻松、新颖的种田类手游《桃源深处有人家》正式上线,玩家纷纷投入其中,化身萝萝山的村民,共同建设美丽新农村。而4月26日备受关注的米哈游新......
  • Rust async 编程
    Rustasync编程AsynchronousProgramminginRust:https://rust-lang.github.io/async-book/中文书名《Rust异步编程指南》:https://github.com/rustlang-cn/async-bookRust语言圣经(RustCourse):https://course.rs/advance/async/getting-started.html一、GettingStarted1.......
  • RustDesk,可私有部署的远程控制软件
    一、服务端:运行压缩包里面的RustDeskServer.Setup.exe安装即可  二、客户端:输入ID服务器IP地址即可开始连接,完全免费使用,无任何限制 ......
  • 跳跃游戏系列
    55.跳跃游戏这种方法所依据的核心特性:如果一个位置能够到达,那么这个位置左侧所有位置都能到达。想到这一点,解法就呼之欲出了~classSolution{publicbooleancanJump(int[]nums){//这种方法所依据的核心特性:如果一个位置能够到达,那么这个位置左侧所有位置......
  • 游戏逆向-D3D9绘制
    做游戏逆向期间通常会用到绘制技术,比如FPS游戏逆向矩形透视,骨骼等。接下来几章内容主要介绍几种比较常见的绘制技术:如D3Dx绘制,Imgui绘制,D3D9HOOK绘制,DWM绘制 GDI绘制与D3Dx绘制的区别通用性的区别:1、GDI渲染方式则是我们熟知的采用GDI进行图像绘制,其优势就是通用性强,只要是目......
  • 直播源码技术之如何实现游戏组队功能
    随着直播行业的发展,直播间的功能技术也在迅速发展,直播间内的游戏功能就是其发展的产物,在观看直播的同时也能去玩游戏,那如果是和几个朋友一起去看直播玩直播间游戏那应该怎么办那,这就要应用到一个功能:直播源码技术游戏组队功能。一、直播源码技术游戏组队功能的意义在这个独生子女居......
  • mac经典酷跑游戏:神庙逃亡 for mac 中文免激活版
    神庙逃亡是一款非常受欢迎的冒险类游戏,玩家需要扮演一个勇敢的角色,在神秘的地下墓穴中闯荡。在游戏中,玩家需要躲避陷阱和怪物,解决谜题,找到通往下一层的出口。这个游戏有多个版本,每个版本都有不同的场景和挑战。玩家可以通过收集金币和道具来增强自己的能力和生命值,从而更好地应对即......
  • 用Python设计第一个游戏
    代码展示"""用Pyhon设计第一个游戏"""print("游戏开始了家人们")temp=input("大家来猜一猜我心里面想的哪个数字,")guwss=int(temp)ifguess==666;print("你是小昂肚子里的蛔虫嘛?!")print("哎呦喂!猜对了,奖励你写一段代码吧")else:print("......
  • 大佬们 有没有unity游戏开发的一些群呀,可以在底下评论一下吗??
    欢迎大家的评论哦下面是一些杂谈:如何提高游戏开发水平要提高游戏开发水平,你可以考虑以下几个方面:学习和实践游戏开发基础知识:了解游戏开发的基本概念、原理和流程。学习编程语言(如C#、C++)、游戏引擎(如Unity、UnrealEngine)和相关工具的使用方法。深入理解游戏设计和游戏......