游戏开发
文章平均质量分 50
haowenlai2008
这个作者很懒,什么都没留下…
展开
-
在Unity中使用LitJson解析json文件
LitJson 这个库需要找资源,找到LitJson.dll后将它放在Assets文件夹下,在脚本中使用using引入即可测试代码 json文件: {“Archice”:[{“EXP”:700,”HP”:800,”Level”:4,”MapID”:2,”MissionCount”:0,”MissionID”:5,”ScriptSign”:”0000001111”}]}这个Js...原创 2018-09-02 16:46:11 · 1479 阅读 · 0 评论 -
Unity学习笔记(1)
transform: transform是GameObject的一个默认的组件,其包含着该对象的几种属性,坐标(Position)以及旋转角度(Rotation)和尺寸(Scale)。 transform的子对象: transform.position 类型为Vector3,其值为该对象的世界坐标值 transform.localposition 类型为Vector3, 其值为以父对象的坐...原创 2018-09-21 20:04:06 · 112 阅读 · 0 评论 -
Unity学习笔记(5):动态加载Prefab
第一种方法,从Resources文件夹读取PrefabAssets/Resources文件夹是Unity中的一个特殊文件夹,在博主当前的认知里,放在这个文件夹里的Prefab可以被代码动态加载直接上代码GameObject Prefab = (GameObject)Resources.Load("Prefabs/", "Character&原创 2018-10-07 17:26:01 · 9772 阅读 · 4 评论 -
OpenGL学习笔记(3) 纹理
关于纹理一般游戏里的物体不一定都是纯色的物体对吧,墙壁啊,木箱啊都不是单纯的纯色物体,上面会有一些图片贴在上面,比如墙壁,箱子,地板之类的,要把图片贴到计算机里的几何图形的话,就要把图片的颜色采样贴到几何图形上...原创 2019-03-25 16:11:35 · 269 阅读 · 0 评论 -
OpenGL学习笔记(1) 画一个三角形
最近找实习各种不顺利,沉迷鬼泣5,四周目通关,又不想写代码,写篇笔记复习一下,要好好学图形学啊用OpenGL画一个三角形项目的简介记录一下跟着learnOpenGL学习的过程笔记里的代码放在github上,依赖的路径都用相对路径配好了,直接下载就能用,IDE是VS2017,代码使用的库是glad和glfw,感觉用glad和glfw开发OpenGL的方式和DX挺像的,也有可能是我见识少, ...原创 2019-03-23 21:53:04 · 1038 阅读 · 0 评论 -
OpenGL学习笔记(2) 画一个正方形
画一个正方形其实,画正方形就是画两个三角形,用四个顶点以及使用索引来实现完整代码在Square项目的Application.cpp里先贴上窗口初始化代码void BaseInit(){ glfwInit();//初始化 glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3);//配置GLFW glfwWindowHint(GLFW_CONTEXT...原创 2019-03-24 16:47:08 · 882 阅读 · 0 评论 -
在Visual Studio中使用.lib和.dll的环境搭建
动态链接库和静态库的区别动态链接库是在运行的时候被调用的,静态库在链接的时候被链接到最终生成的应用程序(.exe)中Visual Studio项目属性设置静态库依赖的配置第一种方法右键项目->属性->配置属性->VC++目录在库目录添加自己的lib文件所在的目录,比如说我的lib文件放在项目根目录下的external\lib目录下,那么就在库目录这里加上.\exte...原创 2019-04-10 12:23:10 · 658 阅读 · 0 评论 -
OpenGL学习笔记(4) GLM库的使用
OpenGL和DirextX不一样,没有内置的数学库,于是我们需要找一个第三方库,按照LearnOpenGL的教程我们使用GLM库,可以到他们的官网下载glm常用的数据类型vec2 二维向量vec3 三维向量vec4 四维向量mat2 二阶矩阵mat3 三阶矩阵mat4 四阶矩阵常用的函数glm::radians() 角度制转弧度制glm::translate() 创...原创 2019-03-28 10:27:33 · 4760 阅读 · 0 评论 -
OpenGL学习笔记(6) 基础光照的计算方法
这个笔记只是漫反射光以及镜面光照的计算方式的笔记基础光照基础光照分为环境光,漫反射光,镜面光照环境光环境光是一个常量,表示在没有光源的情况下物体的光漫反射光漫反射光分量的计算方式将顶点的法向量标准化将片段到光源的方向向量标准化vec3 norm = normalize(Normal); vec3 lightDir = normalize(lightPos - FragPos);...原创 2019-04-09 09:55:42 · 323 阅读 · 0 评论 -
Lua学习笔记(1): HelloWorld和数据类型
Lua是一个轻量级的脚本语言,由c语言编写,容易嵌入到应用中,深受游戏开发者的青睐 环境安装 选用SciTE作为lua的IDE 可以在github找到这个开源的软件 SciTE下载链接 安装好之后打开 环境搭建完成 HelloWorld File->New 创建一个新的文件test.lua 输入print("HelloWorld")点击蓝色的箭头运行 输出原创 2018-09-15 20:57:46 · 171 阅读 · 0 评论 -
在Unity中使用带碰撞体的TiledMap
虽然最近Unity2018版本推出了自己的瓦片地图,但是这个瓦片地图有点BUG,在场景内把瓦片地图铺好做成预制体,动态生成的时候居然丢失了碰撞体,于是我决定还是使用Tiled软件绘制地图并使用Tiled2Unity插件导入项目Tiled下载地址Tiled2Unity下载地址给瓦片地图添加碰撞体打开一个已经画好的地图(画的丑别介意),现在我需要给树根加上碰撞体,防止角色走到上面去(角色的...原创 2018-09-18 19:36:20 · 5997 阅读 · 0 评论 -
Lua学习笔记(8): 元表
元表原创 2018-09-18 17:44:55 · 101 阅读 · 0 评论 -
Lua学习笔记(2): 流程控制与循环以及初涉迭代器
条件判断语句--if...语句if (表达式)then --表达式为1时执行的语句end--if...else语句if (表达式)then --表达式为1时执行的语句else --表达式为0时执行的语句end--if...elseif...else语句if (表达式1)then --表达式1为1时执行的语句elseif (...原创 2018-09-15 21:16:52 · 107 阅读 · 0 评论 -
Unity学习笔记(2): 如何使物体消失
Unity使物体消失的三种方法 1. GameObject.Destroy(gameobjcet); //破坏物体 2. gameObject.SetActive(false); //Unity2017新API,使用该方法设置物体是否存在于Hierarchy,active的新名称为activeSelf,无法直接修改,可以使用gameObject.activeInHierarchy()方...原创 2018-09-21 20:08:21 · 5251 阅读 · 0 评论 -
Unity学习笔记(3):一些常用API和应用场景
Mathf.Lerp(float a,float b,float t)插值函数,当a < b时往a中插入t,以此来实现颜色,声音等渐变效果。GameObject.FindWithTag(string tag)通过标签得到实例化的对象,实现跨脚本操作对象控制物体旋转相关: Quaternion: 四元数void Rotating(float h, float v){ V...原创 2018-09-21 20:09:34 · 236 阅读 · 0 评论 -
Unity学习笔记(4): 碰撞相关API
Unity3D中的碰撞: 在unity中,有普通碰撞体Collider和触发器(Trigger)两种碰撞体,两个普通碰撞体会发生碰撞并产生力学现象,触发器则像是个无法触碰而又真实存在的东西,也会触发碰撞事件,但另一个物体会穿过它,碰撞发生的前提是两碰撞体有一方携带刚体(Rigidbody)组件。 物体对碰撞体进行处理的三个函数:void OnCollisionEnter(Collisi...原创 2018-09-21 20:14:09 · 948 阅读 · 0 评论 -
Lua学习笔记(4): 字符串
Lua的字符串有3种初始化方式str = "2333"str = 'hahahaha'str = [[ruarua]]其中单引号和双引号的初始化方式并无区别,[[]]双中括号这种声明方式比较特殊,在[[]]中的字符不会被转义,即转义符都会被解释称转义后的字符,如[[\n\n]]这个字符串print到控制台后就会出现\n\n,不会被转义意味着我们也不需要转义,即[["2233323...原创 2018-09-17 16:05:50 · 275 阅读 · 0 评论 -
Lua学习笔记(5): 表
表的初始化方式 表的索引类型一般有两种,一种是通过标识符访问,一种是通过数字访问--通过标识符访问的表的初始化table1 = {key_1 = "haha", key_2 = "233", key_3 = 10}--通过数字作为索引的表的初始化table2 = {"haha", "233", 10}对于第一种类型,访问方式有原创 2018-09-17 16:41:12 · 112 阅读 · 0 评论 -
Lua学习笔记(6): 函数
Lua的函数函数用于简化程序,当某些工作需要重复执行的时候就可以使用函数减轻工作量(虽然复制粘贴也行)语法:function 函数名(参数列表) 函数体 return 返回值end --结束标志 function标识符用于声明函数,函数的返回值根据返回值的表达式而定,end作为函数声明的结束标志例子:--计算两个number的和function add(a, b) ret...原创 2018-09-17 19:53:56 · 140 阅读 · 0 评论 -
Lua学习笔记(7): 模块
模块模块就像是c语言工程项目目录里的.h.c文件或外部依赖项,为某一个文件的代码提供依赖,其实就是把工作分成几个模块,方便项目的管理,提高开发效率和维护效率在Lua中,模块其实就是一个表,实现方式也很简单,定义表里面的数据或者方法,最后返回这个表即可测试代码:module.lua文件--module.lua_module.sentence = "我不做人了jojo"_module....原创 2018-09-17 22:06:31 · 117 阅读 · 0 评论 -
OpenGL + glm库实现四元数的旋转
最近在搭小引擎,在节点类里面弄了一个返回模型矩阵的方法,想实现旋转,用欧拉角的方式会发生万向节死锁,所以只好用四元数的方式实现,然而learnOpenGL里只提到了用欧拉角的旋转方法,只好去翻翻glm库的文档了使用四元数进行旋转需要用到几个库#include <glm/glm.hpp>#include <glm/gtc/matrix_transform.hpp>#i...原创 2019-04-14 19:02:58 · 8586 阅读 · 1 评论