![](https://img-blog.csdnimg.cn/ea0a917d9900415f9e46974645bf6180.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
游戏引擎开发
文章平均质量分 57
游戏引擎开发中遇到的问题与解决方案。
雪靡
ACMer一名。
Github地址:https://github.com/nayaku
展开
-
自制编程语言(第三弹)定义Token
终于到了激动人心的实现时候了。将代码片段识别为关键词、标识符、操作符、数字字面量等Token。首先我们定义需要定义我们语言中所用到所有token类型。定义一个Token类,用于封装和包含Token信息。详细完整的代码可以点击这里查看。原创 2023-11-28 22:16:02 · 665 阅读 · 0 评论 -
自制编程语言(第二弹)语法编写
编写上下文无关语法原创 2023-11-26 14:27:07 · 531 阅读 · 0 评论 -
ODBC Connect 栈溢出
ODBC Connect DBName存在字符串长度限制,会导致栈溢出。原创 2023-11-17 11:44:58 · 166 阅读 · 0 评论 -
自制脚本语言(第一弹)
目前,使用图形界面编写剧本,需要使用者双手在鼠标和键盘两者之中来回切换,限制了剧本编写者的创作潜力。更重要的是,由于这些语言主要是由国外人发明,他们并非考虑到非英文母语使用者的习惯,比如对英文关键词的不熟悉,以及存在对半角全角敏感的问题。因此,需要发明一种针对中文游戏剧本解析的脚本语言,以此提升游戏剧本编写的效率。此外,自从Python开始流行以后,很多学校也为非计算机专业的学生开设Python的相关课程,缩进风格更容易让人接受。同时,以行为单位,一行只干最简单的事情,这样会使得整个代码清晰易读。原创 2023-11-15 22:32:42 · 228 阅读 · 0 评论 -
2D游戏引擎开发入门(二)
上一节:https://blog.csdn.net/z736248591/article/details/122658701搭建引擎框架回顾上一章节,我们创建了一个空的窗口,这一章节,我们搭建引擎框架来封装窗口显示和渲染。框架介绍首先来介绍四个最重要的全局类:Director:负责控制整个游戏。Graphics:负责处理游戏的渲染部分。Input:负责处理用户的所有输入。Audio:负责全局管理所有的针对音频的操作。本节主要介绍Graphics渲染部分。创建创建Graphics类原创 2022-02-01 23:01:49 · 3881 阅读 · 2 评论 -
2D游戏引擎开发入门(一)
创建Windows窗口创建一个空项目使用VS创建一个空项目。我这里使用的是Visual Studio 2022。具体方法不再描述。右键属性,将C++语言标准升到C++20.创建声明部分添加头文件:#include <windows.h>#include <iostream>声明WindowProc函数:LRESULT CALLBACK WindowProc( HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lPara原创 2022-01-23 22:43:47 · 5309 阅读 · 0 评论 -
《 游戏引擎架构》笔记
C++11auto自动类型推导。// c++03float f = 3.141592f;_m128 acc =_mm_setzero_ps();std::map<std::string, std::int32_t>::const_iterator it = myMap.begin();// c++11auto f = 3.141592f;auto acc = _mm_setzero_ps();auto it = myMap.begin();nullptr空指针。它是类型原创 2020-11-02 21:52:14 · 325 阅读 · 0 评论 -
游戏类型英文缩写
* 从网络上收集的游戏类型和缩写,如果有缺漏或者错误,请在下面留言评论。ACT(动作类游戏):Action GameFTG(格斗类游戏):Fight Technology GameGalgame(美少女游戏):GalGameVNG(视觉小说): Visual Novel GamePZL(解谜类游戏)Puzzle GameRAC(竞速类游戏):Race GameAVG(冒险类游戏):Adventure GameA.AVG(动作冒险游戏):Action Adventure GameFLY(模原创 2020-11-04 18:02:36 · 12325 阅读 · 0 评论 -
OpenGL ES 3.0学习日记
参考图书:《OpenGL ES 3.0 编程指南(原书第二版)》与Vulkan对比Vulkan占有率数据来源:分发信息中心 | Android 开发者 | Android Developershttps://developer.android.com/about/dashboardsVulkan 版本分发率无47.0%Vulkan 1.0.325.0%Vulkan 1.128.0%数据是以 7 天为单位收集的(截至 2020 年 8 月 30原创 2020-11-02 19:40:08 · 380 阅读 · 0 评论 -
《游戏编程模式》读书笔记 (一)
设计模式命令模式将一个请求封装为一个对象,从而允许你使用不同的请求、队列或者日志将客户端参数化,同时支持请求操作的撤销与恢复。命令就是面向对象的回调。对应代码c++:// 基类class Command{ public: virtual ~Command(){} virtual void execute(GameActor& actor)=0;};class JumpCommand: public Command{ public: vi原创 2020-10-29 11:43:33 · 103 阅读 · 0 评论 -
《游戏行业发展概况》笔记
手游游戏分类MMO梦幻西游 一梦江湖 明日之后卡片刀塔传奇 阴阳师策略类列王纷争 率土之滨ARPG火影忍者(横版ARPG) 崩坏三休闲愤怒的小鸟 Flappy BirdMOBA乱斗西游 王者荣耀射击穿越火线(对抗式) 和平精英(吃鸡)轻竞技球球大作战体育NBA2K21非对称第五人格竞速类QQ飞车自走棋放置类宝石研物语 旅行青蛙未来方向VRAI孤岛惊魂5 利用AI自动生成地形植被(标记一下,以后研究)荒野大镖客 NPC自主交互动物生态、实时环境渲染原创 2020-10-22 17:43:37 · 644 阅读 · 0 评论 -
Vulkan Sample1出现 library “libbn-vulkan-lib.so“ not found 错误
错误内容如下:2021-01-23 13:30:48.718 8326-8326/com.bn.Sample1_1 E/AndroidRuntime: FATAL EXCEPTION: main Process: com.bn.Sample1_1, PID: 8326 java.lang.UnsatisfiedLinkError: dlopen failed: library "libbn-vulkan-lib.so" not found at java.lang.Run原创 2021-01-23 17:45:04 · 558 阅读 · 0 评论 -
bgfx-android-activity出现 ‘struct android_app *‘ with an rvalue of type ‘void *‘错误:
错误详细In file included from E:\code\android\bgfx-android\bgfx\examples\common\entry\entry_android.cpp:26:F:\Android\sdk\ndk-bundle\sources\android\native_app_glue\android_native_app_glue.c:238:25: error: cannot initialize a variable of type 'struct android原创 2021-03-01 14:12:22 · 363 阅读 · 0 评论 -
Android Studio 编写CPP,CMake可以build成功,但是头文件提示文件找不到
方法为:关闭并重启Android Studio。如果不起作用则继续。删除目录下的.gradle .idea .ndkbuild 之类的文件。如果不起作用则继续。清空,重建并且重新链接C++文件。如果不起作用则继续。事实上我到第二步就已经OK了。如果还是有问题,可以看下面的参考。参考:https://stackoverflow.com/questions/55826287/android-studio-this-file-not-part-of-the-project-but-the-proje原创 2021-01-26 11:13:14 · 1210 阅读 · 0 评论 -
“libshaderc.a“ needed by “libbn-vulkan-lib.so“, missing and no known rule to make it
编译带Vulkan的项目出现如下错误:Build command failed.Error while executing process F:\Android\sdk\cmake\3.10.2.4988404\bin\ninja.exe with arguments {-C E:\code\android\Sample1_1\app\.cxx\cmake\debug\armeabi-v7a bn-vulkan-lib}ninja: Entering directory `E:\code\androi原创 2021-01-23 14:38:22 · 552 阅读 · 1 评论 -
bgfx移植安卓
bgfx移植安卓真的是坑多,头发-1-1-1-1…顶上效果图起步克隆项目mkdir bgfx-androidcd bgfx-androidgit clone https://github.com/bkaradzic/bx.gitgit clone https://github.com/bkaradzic/bimg.gitgit clone https://github.com/bkaradzic/bgfx.gitgit clone https://github.com/nodrev/b原创 2021-03-01 18:35:15 · 618 阅读 · 0 评论 -
游戏引擎开发日志(第二天)
上一天的地址:https://blog.csdn.net/z736248591/article/details/117201596#comments_16592627————————————哥是可爱的分割线————————————————第二天 2021年5月24日回顾:上一天创建了项目,决定了目标和工具。今天继续。这里使用GLFW作为渲染库。GLFW介绍:GLFW is an Open Source, multi-platform library for OpenGL, OpenGL ES原创 2021-05-24 22:15:52 · 396 阅读 · 1 评论 -
游戏引擎开发日志 (第四天 2021年6月8日)
第四天 2021年6月8日上一天(第三天)的地址: https://blog.csdn.net/z736248591/article/details/117266221最近有点忙,快到期末了,很多课程都要结课,作业巨多。但是时间是挤出来的。继续之前的交换链函数的完成。先获取表面的能力// 获取表面能力VkSurfaceCapabilitiesKHR capabilities;result = vkGetPhysicalDeviceSurfaceCapabilitiesKHR(physica原创 2021-06-10 10:07:45 · 256 阅读 · 3 评论 -
使用Lua开发android游戏引擎 raylib-lua-sol 开发日记
2021年4月17日白屏问题:切换到指定分支,git checkout 33ed14230608667c18b7d28d2f03722354e1c1a2即可解决问题。参考:Example code only renders blank screen of various colours - Raspberry Pi 3B+ Raspberry Pi OS Lite latest version · Issue #1519 · raysan5/raylibhttps://github.com/ray原创 2021-04-21 20:55:47 · 508 阅读 · 0 评论 -
游戏引擎开发日志 (第一天 2021年5月23日)
游戏引擎开发日志第一天 2021年5月23日千里之行始于足下,哪一个成熟的男孩纸不想拥有一个属于自己的游戏引擎呢?之前还行在别人的引擎上面搭建自己的游戏系统,但是别人的东西终究还是别人的。虽然游戏引擎的开发过程注定是一个无聊和孤独的路程,但是只要走下去,我相信一定硕果累累。人生不得太浮躁,急于求成,要静下心来,一步一个脚印。这里推荐一个巨佬系列:从零开始手敲次世代游戏引擎(序) - 知乎 https://zhuanlan.zhihu.com/p/28587092目标平台:Windows、And原创 2021-05-23 22:05:43 · 729 阅读 · 6 评论 -
游戏引擎开发日志(第三天)
第三天2021年5月25日上一天的地址:https://blog.csdn.net/z736248591/article/details/117234099————————————哥是可爱的分割线————————————————往期回顾>>>>>>>之前,我们开了一个项目,决定底层使用c语言,渲染API使用Vulkan。关于渲染部分,我们的目标如下:1.实例和物理设备选取;2.逻辑设备和队列族;3.窗口表面和交换链;4.图像视图和帧缓冲;5.渲染原创 2021-05-25 22:32:29 · 1608 阅读 · 12 评论