- 博客(633)
- 资源 (96)
- 收藏
- 关注
翻译 Loose Ends
最后用户数据b2Fixture,b2Body和b2Joint类允许您将用户数据附加为uintptr_t。 当您检查Box2D数据结构并且想要确定它们与游戏引擎中的对象之间的关系时,这非常方便。例如,通常将角色指针附加到该角色上的刚体。 这将建立一个循环引用。 如果有actor,就可以得到刚体。 如果有刚体,就可以找到actor。GameActor* actor = GameCreateActor();b2BodyDef bodyDef;bodyDef.userData.pointer.
2021-01-03 22:46:28
22
翻译 Dynamics Module
动力学模块动态模块是Box2D中最复杂的部分,也是您可能与之互动最多的部分。 “动力学”模块位于“通用”和“碰撞”模块的顶部,因此您现在应该对它们有所了解。动力学模块包含:fixture class rigid body class contact class joint classes world class listener classes这些类之间存在许多依赖关系,因此很难描述一个类而不参考另一个类。 在下面,您可能会看到一些尚未描述的对类的引用。 因此,在仔细阅读本章之前,.
2021-01-03 20:57:19
31
翻译 Collision Module
碰撞模块碰撞模块包含可对其进行操作的形状和功能。 该模块还包含一个动态树和大型系统的大阶段加速碰撞处理。碰撞模块设计为可在动态系统外部使用。 例如,除了物理之外,您还可以将动态树用于游戏的其他方面。但是,Box2D的主要目的是提供一个刚体物理引擎,因此对于某些应用程序而言,单独使用碰撞模块可能会受到限制。 同样,我将不花大力气对其进行记录或完善API。形状形状描述了碰撞的几何形状,可以独立于物理模拟使用。至少,您应该了解如何创建以后可以附加到刚体的形状。Box2D形状实现b2Sha.
2020-12-31 11:15:57
21
翻译 Common Module
通用模块通用模块包含设置,内存管理和向量数学。设置b2Settings.h头文件包含:类型,例如int32和float 常数 分配包装器 版本号类型Box2D定义了各种类型,例如int8等,以使其易于确定结构的大小。常数Box2D定义了几个常量。这些都记录在b2Settings.h中。通常,您不需要调整这些常数。Box2D使用浮点数学进行碰撞和模拟。由于舍入误差,定义了一些数值公差。有些公差是绝对公差,有些是相对公差。绝对公差使用MKS单位。分配包装器设置文.
2020-12-30 19:26:41
18
翻译 Testbed
一旦征服了HelloWorld示例,就应该开始查看Box2D的测试平台。 测试平台是一个测试框架和演示环境。 以下是一些功能:带有平移和缩放功能的相机。 鼠标拾取附着到动态物体上的形状。 可扩展的测试集。 用于选择测试,参数调整和调试图形选项的GUI。 暂停和单步模拟。 文字渲染。该测试平台在测试用例和框架本身中有许多Box2D用法的示例。 我鼓励您在学习Box2D时探索并尝试测试平台。注意:测试平台是使用GLFW和imgui编写的。 测试平台不属于Box2D库。 Box2D库与渲.
2020-12-30 19:17:31
52
翻译 Hello Box2D
你好Box2D在Box2D发行版中是一个Hello World项目。 该程序将创建一个大型接地箱和一个小型动态箱。 此代码不包含任何图形。 您将看到的是文本框随时间推移在控制台中的输出。这是如何使用Box2D并运行它的一个很好的例子。创建一个世界每个Box2D程序都从创建b2World对象开始。 b2World是管理内存,对象和模拟的物理中心。 您可以在堆栈,堆或数据部分上分配物理世界。创建Box2D世界很容易。 首先,我们定义重力矢量。b2Vec2 gravity(0.0f, .
2020-12-30 19:00:18
20
翻译 Overview
总览Box2D是用于游戏的2D刚体仿真库。 程序员可以在游戏中使用它来使对象以逼真的方式移动,并使游戏世界更具交互性。 从游戏引擎的角度来看,物理引擎只是用于过程动画的系统。Box2D用可移植的C ++编写。 引擎中定义的大多数类型都以b2前缀开头。 希望这足以避免名称与您的游戏引擎冲突。先决条件在本手册中,我假设您熟悉基本的物理概念,例如质量,力,转矩和脉冲。 如果没有,请先参考Google搜索和Wikipedia。Box2D是在游戏开发者大会上作为物理教程的一部分而创建的。 您可以.
2020-12-30 15:18:07
45
转载 PhysX Setup
Before we start with PhysX...Make sure you have CMake installed: https://cmake.org/ As well as the DirectX SDK: https://www.microsoft.com/en-ca/download/details.aspx?id=6812 Note: If your DirectX installation fails, uninstall all “Microsoft Visual C.
2020-12-23 21:33:49
27
原创 学习视频网站
Udemy.comUdemy是一个非常棒的在线视频教育平台,学习成本很低,涵盖内容很广,适合那些希望增长或者新学习技能的职场人士或者IT人士。这是我少数几个我正在使用的付费学习的视频网站之一。支持中文,还是很棒的。支持手机APP应用在线播放。但课程费用在$20-$50不等。首节课程半价。PS:我从来不相信免费的课程,天下没有免费的午餐。知识本身是无价,你还能指望别人免费传授知识给你吗?你迟早会为此付出智商税。Lynda.comLynda是一家超过20年的老牌在线课程...
2020-12-20 08:35:51
158
2
转载 史上最全的Unreal Engine 4学习资料整理
官方官方文档中文版http://api.unrealengine.com/CHN/ 英文版https://docs.unrealengine.com/en-us/虚幻学院(英文教程,未来可能有汉化)https://academy.unrealengine.com/官方B站https://space.bilibili.com/138827797/#/C++【侯捷】《C++系统工程师》课程 链接:https://pan.baidu.com/s/1ScdbFxNbW624ou...
2020-12-18 19:08:13
195
原创 error LNK2019: 无法解析的外部符号 _auxDIBImageLoadA@4
在项目属性->连接器-》附加目录库中引入glaux.lib
2020-12-14 09:04:09
61
转载 glaux.lib(tk.obj) : error LNK2019: 无法解析的外部符号 _sscanf,该符号在函数 _GetRegistrySysColors@8 中被引用
1>glaux.lib(tk.obj) : error LNK2019: 无法解析的外部符号 _sscanf,该符号在函数 _GetRegistrySysColors@8 中被引用1>glaux.lib(tk.obj) : error LNK2019: 无法解析的外部符号 _vsprintf,该符号在函数 _PrintMessage 中被引用VS2015编译会出现这个问题,解决办法在项目属性->链接器->输入->附加依赖项中添加依赖项legacy_stdio_def..
2020-12-12 20:50:43
25
转载 VS中添加第三方库及相对路径设置
对于一些第三方的SDK,一般会包含头文件(*.h),静态库文件(*.lib)和动态库文件(*.dll)。1. 文件位置:为了提高程序的可移植性,将第三库放在解决方案(*.sln)或者工程(*.vcxproj)文件所在的文件夹下。而不要放在其他地方,比如放在D:\某个位置,这样的话,程序在别的电脑上可能就无法运行了。2. 头文件:在工程属性->VC++目录->包含目录中添加头文件目录 ; 使用相对路径添加。3. 静态库文件:在工程属性->VC++目录->库目录中添加库...
2020-12-08 10:57:55
22
转载 visualStudio error LNK2026: 模块对于 SAFESEH 映像是不安全的
解决方法:1、打开待编译的工程的属性对话框2、单击“链接器”3、单击”命令行“4、将/SAFESEH:NO 写入”其他选项”下的输入框中5、点击“应用”,“确定”6、关闭属性页7、重新编译工程即可...
2020-12-08 09:26:26
25
原创 windows上通过Vs2017构建Box2d
1、第一步在github上面下载源代码:https://github.com/erincatto/box2d2、第二步安装cmake,安装教程:https://yangshuohao.blog.csdn.net/article/details/1106844183、第三步点击build.bat然后继续点击build.sh4、第四步在build文件夹里面打开工程文件(如果自动打开了就不需要在打开了)5、第五步6、第六步设置好以后就可以直接运行了.
2020-12-05 15:08:05
103
原创 windows下cmake的安装与环境变量配置教程
1、第一步下载“.zip”文件。官网链接:https://cmake.org/download/2、第二步解压zip文件。在解压后的文件中找到bin->cmake.exe,它的路径为:E:\AAASoftWareDownload\cmake-3.19.1-win64-x64\cmake-3.19.1-win64-x64\bin。这个路径也就是你把解压后的文件放到哪了。即为你的安装路径。3、第三步给cmake.exe添加环境变量,右键“我的电脑”,选择“属性”,进入高级系统.
2020-12-05 14:46:49
2131
8
转载 OpenGL ES?Vulkan是图形技术的未来?
由 Demi 于 星期五, 2018-10-12 13:51 发表作者:Lukasz Furmaniak曾经,当你打算开发一款带有复杂图形技术的移动App时,大多数情况下你会立即想到OpenGL ES。在本篇文章中我们将讨论Vulkan带来的好处,以及为什么你真的应该考虑使用下一代图形技术API。2016年正式发布的Vulkan是OpenGL ES™的继任者,Khronos Group有效回应了其他竞争API,比如Direct3D 12、Metal等。它为开发者提供更大的控制权以及更透明的程序设计.
2020-11-28 20:24:34
105
转载 OpenGL第三方库:GLFW入门篇
前言:GLFW是继GLUT,FreeGLUT之后,当前最新的用来创建OpenGL上下文,以及操作窗口的第三方库。官方网址为:http://www.glfw.org/。错误处理机制:在使用GLFW之前,有必要设置一个错误处理机制,这样如果出现任何问题,GLFW都可以及时的告知我们。设置接口定义如下:GLFWWerrorfun* glfwSetErrorCallback(GLFWWerrorfun cbfunc)其中错误回调函数的声明如下所示:void ExampleGLFWerrorfun(int e.
2020-11-28 20:23:04
105
原创 如何在VS里面添加文件夹而不是筛选器呢
作为VS小白的我在VS里面如何创建文件夹都不知道哈哈哈哈,其实我们刚刚新建一个VS过程,只会发现可以创建筛选器,如图其实你创建筛选器看起来文件分类了,其实并没有,你工程目录下面的文件都在一起呢,根本没有分类。那该如何创建文件夹呢,其实很简单,只需要如图操作:点击这个显示所有文件,这个时候右键就是如图:...
2020-11-24 20:23:36
103
原创 解决learnopengl网站上面实战部分遇到的小Bug
在我做learnopengl网站上面实战部分的时候,碰到了好几个问题,第一个问题就是“非常量引用的初始值必须是左值”,产生这个问题的原因可以参考我的这篇博客:https://yangshuohao.blog.csdn.net/article/details/109864291解决方法很简单只要添加const就可以了。第二个问题就是运行时崩溃,这个问题你只需要注释掉#define GLEW_STATIC就可以了...
2020-11-20 20:48:26
100
原创 非常量引用的初始值必须是左值
1 、左值和右值在C++中,左值可以出现在赋值语句的左边和右边;右值只能出现在赋值语句的右边,不能出现在赋值语句的左边。变量是左值,常量是右值。2 引用引用(reference)为对象起了另外一个名字,引用类型引用(refers to)另外一种类型。通过在变量名前添加“&”符号来定义。引用具体的使用方法请参考《C++的引用与重载函数》。3 非常量引用的初始值必须是左值3.1 产生原因自定义函数increment()的代码为void increment(double&am.
2020-11-20 20:46:46
93
转载 三维物体AABB碰撞检测算法
1. AABB包围盒 在游戏中,为了简化物体之间的碰撞检测运算,通常会对物体创建一个规则的几何外形将其包围。 其中,AABB(axis-aligned bounding box)包围盒被称为轴对其包围盒。 二维场景中的AABB包围盒具备特点:(注:由于Cocos2d-x是基于Opengl ES的,所以下图中的所有坐标系均采用右手直角坐标系) (1) 表现形式为四边形,即用四边形包围物体。 (2) 四边形的每一条边,都会与...
2020-11-15 16:30:40
114
转载 渲染管线
概述 (Introduction) 图形渲染管线是实时渲染的核心组件。渲染管线的功能是通过给定虚拟相机、3D场景物体以及光源等场景要素来产生或者渲染一副2D的图像。如上图所示,场景中的3D物体通过管线转变为屏幕上的2D图像。渲染管线是实时渲染的重要工具,实时渲染离不开渲染管线。图形渲染管线主要包括两个功能:一是将物体3D坐标转变为屏幕空间2D坐标,二是为屏幕每个像素点进行着色。渲染管线的一般流程如下图所示。分别是:顶点数据的输入、顶点着色器、曲面细分过程、几何着色器、图元组装、裁剪剔..
2020-11-14 22:47:09
198
转载 OpenGL超级宝典第7版 配置环境&第一个程序
首先贴出OpenGL超级宝典第7版 PDF 的下载地址:https://f.usemind.org/files/b/1/UseMind.ORG_comprehensive-tutorial-and-reference_2015__.pdf还有OpenGL超级宝典官方网站:http://www.openglsuperbible.com/要开始OpenGL超级宝典的学习不是用传统的配环境方法的,因为它要用到它自己写的头文件和库。我们要到官方网站上获取这些文件。首先在官方网站下载第7版的源代码...
2020-11-11 22:05:08
102
转载 置换贴图,法线贴图,凹凸贴图的区别
先自我介绍……你要是说这是自我炒作我也认了。首先说明,FXCarl是一个对3D美术一窍不同的家伙。虽然很想往技术美工方向发展了。因为是学程序出身,眼下能做的也就是写写Shaders。等到手上的项目做完,会公开始用的实时光照模型……不过那是后话了。现在只是想配合一下这两天大家讨论的热火朝天的Normal Map,在这里和占大多数的美术人员从另外一个角度来谈谈“凹凸贴图技术”首先我想说,对于凹凸贴图在计算机图形领域中的研究,最早开始于70年代末,至今已经有接近30年历史了。Normal Map只是一种目前很.
2020-11-09 21:52:53
107
原创 Unity实现一个简单易用的UI框架
1、面板管理类using System.Collections;using System.Collections.Generic;using UnityEngine;public class PanelMgr:MonoBehaviour { //单例 public static PanelMgr instance; //画板 private GameObject canvas; //面板队列,记录已经打开的界面 public List<PanelBase> dict.
2020-10-27 07:50:35
141
1
原创 c#实现单例模式
public sealed class Singleton{ Singleton() { } public static Singleton Instance { get { retunr Nested.instance; } } class Nested { static Nested() { } ..
2020-10-18 20:00:52
49
原创 Unity ScrollRect 和 Scrollbar
在unity里面常常需要通过ScrollRect和Scrollbar配合来实现各种效果,本人也碰到了很多次这样的需求,但是作为刚刚接触这两个东西的伙伴可能会碰到各种问题,今天我就把自己实现的背包物品滑动为例对这两个组件进行详细讲解。ScrollRect:顾名思义是一个滑动矩形的意思。Content 滑动的内容Horizontal:水平滑动Vertical : 竖直滑动Movement Type : 滑动状态 unrestricted:没有回弹效果...
2020-10-07 14:25:45
148
原创 Git上传大文件
如果发现文件过大不能上传到github可以安装LFS(Large File Storage)# 步骤一:在Head-First-HTML5-programming-exercise文件夹下打开进入git命令行模式# 步骤二:在git中安装lfsgit lfs install# 步骤三:设置追踪文件路径,我这边是设置Head-First-HTML5-programming-exercise文件夹下的内容# 然后会看到在当前文件夹下有一个 .gitattributes,这个文件可以自己从新设置追.
2020-10-06 16:34:34
116
原创 如何通过git上传文件到github上
如果你之前安装git成功的话,右键会出现两个新选项,分别为Git Gui Here,Git Bash Here,这里我们选择Git Bash Here。接下来输入如下代码(关键步骤),把github上面的仓库克隆到本地git clone https://github.com/YSHhaomei/Unity-NetWork-Game.git(https://github.com/YSHhaomei/Unity-NetWork-Game.git替换成你之前复制的地址)这个步骤以后你的本地项目文件夹.
2020-10-06 16:25:22
184
1
原创 c#单例实现
namespace Common{ public class Singleton<T> where T : new() { private static T instance; public static T Instance { get { return Equals(instance, default(T)) ? (instance = ne..
2020-09-30 15:08:38
83
转载 Unity3D之LOD技术详解
LOD为Levels of Detail的简称,简单来说即为多细节层次,不少朋友经常听到这个名称,但是并不知道如何把这个技术运用在游戏里面,如果用百度查到的说法是:LOD技术指根据物体模型的节点在显示环境中所处的位置和重要度,决定物体渲染的资源分配,降低非重要物体的面数和细节度,从而获得高效率的渲染运算。以上的解释可能很多人看了是一头雾水,还是不了解LOD的实际运用,以下让我们通过一个简单的案例来说明LOD的巧妙之处。我们使用了3dsmax来说明LOD模型的制作,下载附件后打开场景文件,里面是三个面数.
2020-09-23 12:37:15
221
原创 unity实现文字飘血
效果如下:下载链接:https://download.csdn.net/download/weixin_44350205/12849600
2020-09-22 16:13:13
137
原创 Unity实现技能冷却
效果如下:using BoxWorldServer;using System;using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.UI;public class PlayerSkillEffect : MonoBehaviour{ //技能按钮 private Button redBtn; private Bu.
2020-09-22 16:08:40
206
原创 unity实现网络对战游戏
1、课设作品需求分析.. 12、课设作品详细设计.. 13、课设作品编程实现.. 13.1场景搭建... 13.2角色控制... 13.3游戏UI设计... 13.4添加声音... 13.5添加粒子特效.. 14、课设作品测试.. 15、课设总结... 11、课设作品需求分析魔盒世界是一款多人在线第一人称视角射击游戏,它包括客户端和服务器端两个部分,具备账号登录注册功能,使用MySql数据库保存账户数据(后期通过腾讯云MySql进行存储)。游戏流程设.
2020-09-19 19:56:02
272
转载 Unity3D实现扭动挤压浏览效果
最终实现了下按如下图这么一种浏览效果:可能要实现这么一种效果用动画插件会很快,但总感觉有点大材小用这里我向大家分享一个极简方式来实现这么一种效果目录结构如下其中Items有4个Image子节点在父节点Items下添加如下图横向布局组件在其4个Image子节点下添加如下图布局元素组件完成这些步骤后接下来就是代码实现了在Items添加如下脚本组件using System.Collections;using System.Collections.Gene.
2020-09-16 16:35:52
39
转载 mysql 8.0 授权远程登陆连接(授权命令报错问题)不能直接授权,需新建user
mysql8,需要创建新用户进行授权,直接用root授权报错;这里创建用户为admin 密码123456create user 'admin' identified by '123456';然后执行:grant all privileges on *.* to '用户名';flush privileges;
2020-09-11 15:47:25
240
原创 unity之DoTween实现动态按钮
为了让按钮更加美观,通过DoTween动画插件实现一个按钮动态大小变换的效果。实现需要在unity资源商店下载免费版的DoTween插件然后导入设置一下就可以了,具体可以参考:https://blog.csdn.net/qq_35361471/article/details/79353071实现代码如下: //改变按钮大小 public void BtnScale(Transform transform) { //在自身的大小上加上0.2倍 .
2020-09-09 18:40:18
155
原创 Unity判断鼠标是否位于UI上
我们在做项目的时候可能经常会有这样的需求,比如判断鼠标是否位于UI上面,这个在unity里面判断还是比较容易的,主要需要使用using UnityEngine.EventSystems; 命名空间。EventSystem.current.IsPointerOverGameObject()==true 的时候表示鼠标在Ui上面EventSystem.current.IsPointerOverGameObject()==false 的时候表示鼠标不在Ui上面上面这个是对于pc端的,Unit..
2020-09-07 14:12:18
112
1
原创 独立游戏大电影观后感
其实在看电影的过程中,心里是越看越激动,我完全能够体会他们前期的绝望,当然最后成功的喜悦也是非常让人激动不已的。我觉得坐着自己喜欢的事是最快乐的事情,哪怕这一路上有很多挫折。兴趣是最好的老师,你坚定不移的朝着自己感兴趣的方向努力,最后肯定会成功的。作为正在考研复习的我看的热血沸腾,复习的效率一下子就上去了,哈哈哈。没有什么是做自己感兴趣的事还快乐的了。我很喜欢一句话,“不是看到了希望才去努力,而是通过努力去看到希望。”。加油!!!前方还有一个更好的自己在等着你呢。电影当中介绍的三个游戏Supe.
2020-08-09 22:49:09
58
通过easyX实现的一个2048小游戏.rar
2020-07-02
虚拟现实漫游项目.rar
2020-07-19
游戏引擎实现c++调用c#脚本功能mono.rar
2021-01-03
box2d-master.zip
2020-11-28
fast_noise_ruby-master.zip
2020-11-28
glfw-master.zip
2020-11-28
glm-master.zip
2020-11-28
imgui-docking.zip
2020-11-28
Snow-Scene-Demo-master.rar
2020-11-25
NotepaddPP-glsl-integration-master.zip
2020-11-07
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人 TA的粉丝