虚幻4 蓝图被编译成的蓝图汇编代码

虚幻4引擎中的蓝图在最终执行时会被编译成一种称为蓝图汇编的字节码形式。这些蓝图汇编代码对应于EngineSourceEditorKismetCompilerPublicBlueprintCompiledStatement.h中的枚举功能。C++源码的编译过程涉及到将蓝图功能转化为CoreUObjectPublicUObjectScript.h中定义的解释函数数组。通过IMPLEMENT_VM_FUNCTION宏,这些字节码作为索引调用相应的执行函数。
摘要由CSDN通过智能技术生成

\Engine\Source\Editor\KismetCompiler\Public\BlueprintCompiledStatement.h

//
// FBlueprintCompiledStatement

enum EKismetCompiledStatementType
{
	KCST_Nop = 0,
	KCST_CallFunction = 1,		// [wiring =] TargetObject->FunctionToCall(wiring)
	KCST_Assignment = 2,		// TargetObject->TargetProperty = [wiring]
	KCST_CompileError = 3,		// One of the other types with a compilation error during statement generation
	KCST_UnconditionalGoto = 4,	// goto TargetLabel
	KCST_PushState = 5,         // FlowStack.Push(TargetLabel)
	KCST_GotoIfNot = 6,			// [if (!TargetObject->TargetProperty)] goto TargetLabel
	KCST_Return = 7,			// return TargetObject->TargetProperty
	KCST_EndOfThread = 8,		// if (FlowStack.Num()) { NextState = FlowStack.Pop; } else { return; }
	KCST_Comment = 9,			// /* Comment */
	KCST_ComputedGoto = 10,		// NextState = LHS;
	KCST_EndOfThreadIfNot = 11, // [if (!TargetObject->TargetProperty)] { same as KCST_EndOfThread; }
	KCST_DebugSite = 12,		// NOP with recorded address
	KCST_CastObjToInterface = 13,	// TargetInterface(TargetObject)
	KCST_DynamicCast = 14,	    // Cast<TargetClass>(TargetObject)
	KCST_ObjectToBool = 15,		// (TargetObject != None)
	KCST_AddMulticastDelegate = 16,		// TargetDelegate->Add(EventDelegate)
	KCST_ClearMulticastDelegate = 17,	// TargetDelegate->Clear()
	KCST_WireTraceSite = 18,    // NOP with recorded address (never a step target)
	KCST_BindDelegate = 19,		// Creates simple delegate
	KCST_RemoveMulticastDelegate = 20,	//  TargetDelegate->Remove(EventDelegate)
	KCST_CallDelegate = 21,		// TargetDelegate->Broadcast(...)
	KCST_CreateArray = 22,		// Creates and sets an array literal term
	KCST_CrossInterfaceCast = 23,	// TargetInterface(Interface)
	KCST_MetaCast = 24,	
Epic Games今天宣布,正式发布“虚幻引擎4”(Unreal Engine 4/UE4),相关所有资源也一并放出。# h9 u6 O( p! y& D) q4 K7 P9 ~# N   只要每个月花19美元,你就能到全部资源,包括拿过来就能用的虚幻编辑器(Unreal Editor),GitHub上的完整C++源代码(支持微软Visual Studio/苹果Xcode),还有完整的生态系统:论坛、维基、问答、协作。8 t8 q& _* ?7 K. D) S6 W 一大波新游戏要来了 虚幻4引擎正式发布, s! f+ v' w9 M j3 y: ^   而在虚幻引擎4游戏的销售中,Epic将抽取5%的毛收入提升,也就是你的游戏赚了100万美元,就要交给Epic 5万美元。   回到技术方面,Epic号称虚幻引擎4是他们多年来心血的结晶,而且现在只是第一版,才刚刚开始。C++代码里你可以看到大量的创新,比如说支持虚拟立体偷窥Oculus VR,支持Linux操作系统,以及支持Valve SteamWorks、StreamBox,而且还可以通过HTML5在网页浏览器内开发游戏(页游)。   平台支持PC、PS4、Xbox One、iOS、Google等等。   虚幻引擎4基于DirectX 11,拥有新的材料流水线、蓝图视觉化脚本、直观蓝图调试、内容浏览器、人物动画、Matinee影院级工具集、全新地形和植被、后期处理效果、热重载(Hot Reload)、模拟与沉浸式视角、即时游戏预览、AI人工智能、音频、中间件集成等一系列全新特性。   虚幻引擎4现已开始提供授权。 现在提供网盘下载地址,毕竟到官方下载很麻烦,还要$,呵呵,10分很值得,代码风格很好,注释很爽!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值