[10]Lua脚本调用C中的List和Dictionary 调用还是在上文中使用的C脚本中Student类: lua脚本: print("------------访问使用C脚本中的List和Dictionary-----------") student.list:Add(2024) student.list:Add(5) student.list:Add(18) locallistSize=student.list.Count print("list长度"..tostring(listSize)) --遍历list fori=0,listSize1do print("--->".....

  1wMBnbixARwC   29天前   72   0   0 游戏开发

d3d12龙书阅读----绘制几何体(上)课后习题 练习1完成相应的顶点结构体的输入-布局对象 typedefstructD3D12_INPUT_ELEMENT_DESC { 一个特定字符串 将顶点结构体数组里面的顶点映射到顶点着色器的输入签名 LPCSTRSemanticName; 语义索引如果语义名相同的话使用索引进行区分 UINTSemanticIndex; 顶点元素的格式与顶点结构体元素的大小相对应 DXGI_FORMATFormat; 输入槽索引 UINTInputSlot; 代表着顶点结构体各元素的偏移量 UINTAlignedByteOffset; D3D12_INPUT_C...

  Ly5WKgqR6znz   29天前   67   0   0 游戏开发

ue生成VS工程报错 右键uproject,GeneratingVisualStudioprojectfiles,报错信息如下:就是我安装的msvc版本太旧 RunningC:/ProgramFiles/EpicGames/UE_5.3/Engine/Build/BatchFiles/Build.bat-projectfiles-project="D:/ue/myue/myue.uproject"-game-rocket-progress-log="D:\ue\myue/Saved/Logs/UnrealVersionSelector-2024.05.17.log" UsingbundledD...

  vWa2lMmTbsfJ   29天前   92   0   0 游戏开发

目录 前言 资源下载 添加人物节点 运动状态机 移动平台 单向穿过 奇怪的Bug Area2D BodyEntered 死亡区域 全局类 多线程安全 TileMap处理 TileMap分层 前言 这次来学习一下youtube的传奇Unity博主,Breakeys的Godot新手教程。Breakeys是从15岁左右就开始用unity做游戏并在youtube上面发布视频了。他已经在youtube上面发布了讲解450个视频,然后他累了,3年前发布了一个告别视频后离开了。因为前端时间的untiy收费事件,他又回来了。他并没有明确的批评Unity,但是他说游戏的未来应...

  TWYX9ldS9bqI   29天前   66   0   0 游戏开发

使用自定义lua解析管理器调用函数 使用自定义委托来调用lua脚本中的多返回值函数和长参数类型的函数。 先看代码,依旧是上篇文章中所贴的脚本。新增调用两个函数testFunc usingSystem; usingBaseFramework; usingLuaInterface; usingUnityEngine; usingUnityEngine.Events; usingObject=System.Object; namespaceCallLua { publicclassCallLuaEntrance:MonoBehaviour { //+委托 publicdelegateintCust...

  1wMBnbixARwC   2024年05月17日   33   0   0 游戏开发

[5]使用自定义lua解析管理器调用table 访问数组类型的table CallLuaEntrance测试脚本中内容: //--------------------------------------访问table----------------------------- //4.1访问list/数组类型的table //获取table LuaTableluaTable=CallLuaManager.Instance().LuaState.GetTable("arrayTable"); //直接访问 Debug.Log("luaTable[1]"+luaTable[1]); Debug.Lo...

  1wMBnbixARwC   2024年05月17日   39   0   0 游戏开发

d3d12龙书阅读----绘制几何体(下) 本节在上一节的基础上,对整个绘制过程进行优化,将绘制单个几何体的内容拓展到了多个几何体,同时对根签名进行了进一步地探索。 帧资源 在之前绘制每帧的结尾,我们都要使用flushingcommandqueue方法,要一直等待gpu执行完所有命令,才会继续绘制下一帧,此时cpu处于空闲时间,同时,在绘制每一帧的初始阶段,gpu要等待cpu提交命令,此时gpu处于空闲时间解决上述问题的一种方法是:构建以cpu每帧都要更新的资源为数组元素的环形数组,这些资源被称为帧资源,一般循环数组由3个帧资源元素构成当gpu在处理上一帧的命令时,cpu可以为下一帧更新资源,...

  Ly5WKgqR6znz   2024年05月17日   39   0   0 游戏开发

看完games101的第8和9章,就会很好理解这些内容。三维世界中的模型是由点组成三角形,进而组成复杂的模型。每个面都有不同的颜色(像素),可以用纹理来贴上去,最后在形成在屏幕上。 立方体例子 如何把2d的图片包到3d的模型上面? 把3d物品展开成平面(展UV),和小时候做包装纸那样 Blender零基础入门教程15【材质篇】EP3.2纹理坐标与映射节点详解颜色渐变YouTube 什么是UV贴图? UV贴图是一种将3D模型表面纹理映射到2D平面上的技术。在3D模型制作过程中,UV贴图通常用于将纹理图像应用到模型表面,以增加模型的细节和真实感。 2D纹理贴图只有x、y坐标,那它是如何贴到xy...

  vWa2lMmTbsfJ   2024年05月17日   32   0   0 游戏开发

[6]C访问调table类中的成员变量和函数 访问table中的变量和函数 lua中可以使用table作为class,因此对table中的函数访问调用是必要的根据前面对table访问和function的获取调用,这里尝试获取调用。 依然是如此,此种调用方式获取到的table中的函数是引用拷贝。 Main.lua脚本新增内容 CStudent={ _name="TonyChang", _id="202499990101", _sex="male", CStudent=function() print("table中的函数") end } 测试脚本中的调用内容: //-------...

  1wMBnbixARwC   2024年05月17日   37   0   0 游戏开发

toLua中Lua调用C: [7]Lua脚本调用C中的class 准备工作:1.调用lua脚本2.绑定LuaState虚拟机,这样在lua脚本中才可以对C脚本进行访问。3.在lua中使用Debug打印信息,需要在自定义CustomSetting脚本中添加Debug,并生成wrap文件。 --- --GeneratedbyEmmyLua(https://github.com/EmmyLua) --CreatedbyTonyChang. --DateTime:2024/5/146:55 --- print("----------------------toLua中调用c脚本----------...

  1wMBnbixARwC   2024年05月17日   38   0   0 游戏开发

Mathf Mathf和Math 1、Math是C中封装好的用于数学计算的工具类,位于System命名空间中。2、Mathf是Unity中封装好的用于数学计算的工具结构体,位于UnityEngine命名空间中。 Mathf中的常用方法 1.πPIprint(Mathf.PI);2.取绝对值Abs print(Mathf.Abs(-10.5f));//10.5 print(Mathf.Abs(-86));//86 3.向上取整CeilToInt print(Mathf.CeilToInt(1.001f));//2 print(Mathf.CeilToInt(5.6f));//6 4.向下取整...

  oXKBKZoQY2lx   2024年05月17日   46   0   0 游戏开发

[8]Lua脚本调用C中的枚举学习 --调用枚举类型 print("----------------------toLua中调用C中枚举类型-------------------------") PrimitiveType=UnityEngine.PrimitiveType localcubeObj=GameObject.CreatePrimitive(PrimitiveType.Cube) --使用自定义枚举 localtc=TestScripts.OUTSTANDING_STUDENTS.TonyChang print("优秀学生代表----"..tostring(tc).."排名"..t...

  1wMBnbixARwC   2024年05月17日   43   0   0 游戏开发

[2]自定义Lua解析方式 在上文中我们学会学会更改加载路径,加载对应文件夹下的Lua脚本。 默认解析加载的lua脚本存在的文件位置非AB包或者Resources文件夹下往往不能随包体更新,这显然不符合热更需要。因此自定义继承 tolua中lua脚本加载解析类LuaFileUtils来重写对应的lua脚本加载方法。 publicclassLuaCustomLoad:LuaFileUtils { ///<summary> ///优先从AssetBundle中加载(默认AB文件名称为lua)Resources文件夹下lua文件夹加载 ///</summary> ///&lt...

  1wMBnbixARwC   2024年05月08日   65   0   0 游戏开发

[0]toLua的导入 下载toLua资源包,访问GitHub项目地址,点击下载即可。 将文件导入工程目录中: 导入成功之后会出现Lua菜单栏,如未成功生成文件,可以点击GenerateAll重新生成(注意很可能是路径问题导致的生成失败!) 之后就可以开始编写脚本执行第一个lua程序了! [1]C调用Lua脚本 编写C脚本,使用LuaState来开启虚拟机加载lua脚本,加载lua脚本有两种方式。 直接加载Lua目录下的lua脚本 这是LuaState自动寻找的路径--即Asset/Lua路径,所以只需要给lua脚本的名称即可。 publicclassCallLuaEntrance:Mo...

  1wMBnbixARwC   2024年05月08日   44   0   0 游戏开发

最近做传送门的时候发现一个很好玩的问题,当我通过Collsion触发带floatingPawnMovement的Pawn的SetActionLocation时会获得非常大的速度:pawn直接弹射到宇宙了ಠ_ಠ 但是当我通过controller按键触发传送时却没有这个问题于是我看了下floatingPawnMovement代码发现了问题所在`voidUFloatingPawnMovement::TickComponent(floatDeltaTime,enumELevelTickTickType,FActorComponentTickFunctionThisTickFunction){if(Sh...

  fBPubYo5OeJb   2024年05月08日   51   0   0 游戏开发

[3]自定义Lua解析器管理器-------演化脚本V0.5 方便我们在项目中使用Lua解析方法,我们封装管理一个lua解析器,管理LuaState的方法执行。 解析器脚本: usingLuaInterface; namespaceBaseFramework { ///<summary> ///自定义的toLua解析器 ///</summary> publicclassCallLuaManager:SingletonAutoMono<CallLuaManager> { privateLuaState_luaState; ///<summary>...

  1wMBnbixARwC   2024年05月08日   71   0   0 游戏开发

工具类封装 通过上文中对AB包加载API的了解和简单使用,对AB包资源加载的几种方法进行封装,将其写入单例类中,如代码展示。 确保每个AB资源包只加载一次: 在LoadAssetBundleManager单例工具类中,首先提供基本的AB包及其AB包依赖包的加载方法,为保持AssetBundle只加载一次,使用DIctionary键值对来记录已经加载出的AB资源。 主包路径的灵活获取: 加载主包路径的获取,采用宏来对不同的打包平台来选择对应的主包名称。(可自行定义使用) 依赖包的加载: 通过加载主包中的AssetBundleManifest来获取目标AB包的依赖AB包名称,根据名称进行逐个加载。...

  1wMBnbixARwC   2024年05月03日   43   0   0 游戏开发

Unity游戏框架设计之背包管理器 简单介绍 背包系统通常分为两个部分,第一个部分是背包的UI界面,第二个部分是对背包进行逻辑操作的管理器。 在下述代码中,实现了对背包的基本逻辑操作,包括向背包添加物品,从背包中取出物品,移动背包中的物品和使用背包中的物品的基本操作,并将这些操作封装为背包管理器。 为实现完整的背包系统,我们需要背包UI资源,并基于MVC模式编写背包UI的脚本,并配合背包管理器进行实现。 代码设计 publicclassBackpackManager:SingletonMono<BackpackManager> { privateDictionary<stri...

  BSUpDmYq9vTZ   2024年05月02日   43   0   0 游戏开发

AssetBundle AB包是什么? AssetBundle又称AB包,是Unity提供的一种用于存储资源的资源压缩包。 Unity中的AssetBundle系统是对资源管理的一种扩展,通过将资源分布在不同的AB包中可以最大程度地减少运行时的内存压力,可以动态地加载和卸载AB包,继而有选择地加载内容。 AB包的优势有哪些? AB包的存储位置自定义。可以放入可读可写的路径下便于实现热更。 可以自定义压缩方式。对于压缩方式可以选择不压缩或者LZMA和LZ4等不同的压缩方式压缩,满足不同的网络传输需求。 资源可以分布在不同的AB包体中,可以最大程度减少运行时候的内存压力,做到即用即加载,针对性的...

  1wMBnbixARwC   2024年05月02日   54   0   0 游戏开发

目录 前言 场景继承 在SceneModel里面添加基础的节点获取 EnemyScene.cs EnemySceneModel.cs GodotExport属性和Enum Export默认值问题 修改前 EnemySceneModel.cs EnemyScene.cs 修改后 EnemyScene.cs EnemySceneModel.cs 但是有个问题,有必要这么写吗? 导入野猪图片 图片拼接 RayCast2D射线碰撞检测 碰撞检测 碰撞层 碰撞层命名 状态机 状态机的朝向问题和加载问题 总结 前言 这个实在是拖了太久了,这次速战速决 场...

  TWYX9ldS9bqI   2024年05月02日   70   0   0 游戏开发
推荐作者 更多

2023-11-08

2023-11-12

2023-11-21

2023-11-01

2023-11-02

2023-11-02

2023-11-02

2023-11-02

2023-11-01

2023-11-01