成都网站制作公司保险网站程序源码
news/
2025/9/23 21:08:18/
文章来源:
成都网站制作公司,保险网站程序源码,如何搭建一个网站开发环境,页面 访问 升级 广大一、前言 本系列如无特殊说明使用的虚幻版本都是5.2.1#xff0c;VS为2022版本。在Unity中通常创建的脚本都默认继承了MonoBehavior#xff0c;都是不能再用代码New而实例化的#xff0c;虚幻也是一样不能直接New来实例化。在Unity中是通过Instantiate方法来实例化一个游戏对…一、前言 本系列如无特殊说明使用的虚幻版本都是5.2.1VS为2022版本。在Unity中通常创建的脚本都默认继承了MonoBehavior都是不能再用代码New而实例化的虚幻也是一样不能直接New来实例化。在Unity中是通过Instantiate方法来实例化一个游戏对象虚幻中通过TSubclassOf、StaticClass等操作来实例化一个游戏对象。相比来说虚幻更复杂点。
二、实现
2.1、实例化Object类 创建一个Object类然后在MyPawn的开始方法中实例化代码如下创建成功后会打印出 TSubclassOfUMyObject1 MySubclassObject UMyObject1::StaticClass();MyTestObject NewObjectUMyObject1(GetWorld(), MySubclassObject);if (MyTestObject){UE_LOG(LogTemp, Warning, TEXT(This is a %s), *MyTestObject-GetName());
}
创建类的默认名称。注意在引用Object类型的类时一定要在前面加”U。
2.2、实例化Actor类
创建一个Actor类然后同样再MyPawan的开始方法中实例化代码如下注意Actor类型的类引用 //实例化一个Actor类TSubclassOfAMyActor1 MySubclassObject AMyActor1::StaticClass();AMyActor1* TempActor NewObjectAMyActor1(GetWorld(), MySubclassObject);if (TempActor){UE_LOG(LogTemp, Warning, TEXT(This is a %s), *TempActor-GetName());}
前面一定要加“A”。
2.3、获取一个静态实例GameInstance
对于GameInstance它不需要再手动实例化因为这个类比较特殊是虚幻引擎自动管理只需要讲其获取到即可代码如下 赋值一个Game InstanceMyGameInstance CastUMyGameInstance1(GetWorld()-GetFirstPlayerController()-GetGameInstance());if (MyGameInstance){UE_LOG(LogTemp, Warning, TEXT(My Instance Name:%s,IP:%d, UserName:%s), *MyGameInstance-GetName(), MyGameInstance-IP, *MyGameInstance-UserName);}
三、总结
3.1、此处的实例化的类都只是在内存中还未真正体现在游戏应用中比如实例化一个Cube的类在运行时并不会真的显示一个Cube如需要真正显示还需通过Load方法这个后续在讲。
3.2、Object类和Actor类的前缀字母是不同的Object前面加“U”为UObjectActor前面加“A为AActor。
3.3、GameInstance类不需要手动实例化它在虚幻引擎运行时就自动创建和销毁只需要获取即可。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/913888.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!