场景编辑器源码
1. unireal tournament editor是啥
EpicGames日前公布了以“UnrealEngine4”所制成的《虚幻竞技场4(UnrealTournament4)》消息,此则新闻在国外引起了一阵轩然大波。早在2005年8月时,EpicGames副总裁MarkRein曾透露,他们已经开始开发“UnrealEngine4”。继前代引擎“UnrealEngine3”后,EpicGames公司总裁表示,他们期望他们所开发出来的游戏引擎能被运用来制作更多更特别的游戏,如今也已有数不清的游戏运用“UT”引擎成功开发出不少知名的游戏大作,例如《天堂2》甚至是未来的《天堂3》等等,连日本大厂SQUAREENIX也曾用此引擎来进行游戏的研发过。“UnrealEngine4”未来首度将于次世代主机第三代XBOXone、PS4上率先进行游戏开发,最后将会全面进攻至PC市场,玩家们约在2010~2012年间时,就会真正享受到超逼真的《虚幻竞技场(UnrealTournament4)》。但是Epic同时对虚幻引擎4引擎是否支持WiiU的问题上做出了基本否定的回答,在之前的访问中,Epic的创始人之一MarkRein就说过Epic并不打算把虚幻4带到WiiU上,不过当时他也说:“如果消费者们想要在WiiU上获得一个虚幻引擎4游戏的移植版,他们还是有可能玩到。”于是这次专门有人再度问及了这个问题,于是我们得到了更明确的答案。“NO!”“没有,我的意思是那句话并不是正确的答案,我们没打算,WiiU上有虚幻3引擎,不是吗?它已经创造了非常多优秀的游戏。而虚幻4出现后虚幻3并不会消失。但是我们要把虚幻4带给下一代主机。这就是我们所要关注的焦点。如果你想制作WiiU的游戏,可以用虚幻3,它已经支持WiiU了。”这很明确的表示了WiiU没有虚幻引擎4,而且也不会出现支持虚幻引擎4制作的游戏。早先时候,EA也宣布寒霜3引擎不支持WiiU,也就意味着更多的第三方会因此而不考虑WiiU的移植大作,虽然任天堂可以继续凭借自己的阵营来保持竞争力,但考虑到WiiU存在游戏数量不如预期的问题,我们不得不说WiiU的前景会在这件事后更加蒙上阴影。◎骨骼动画系统;支持每顶点可达4骨骼同时影响的效果以及复杂的骨骼结构。◎动画由一棵动画物体树驱动,包括:·混合控制器,进行对嵌套的动画物体之间的多路混合。·数据驱动的控制器,封装动作捕捉或手动制作的动画数据。·物理控制器,连接到刚体动态引擎,用来实现布娃娃系统的游戏者和NPC动画和对力的物理响应。·过程动画控制器,以C++或UnrealScript实现,为了实现一些如使一个NPC的头部和眼睛跟踪一个在关卡中行走的游戏者,或使一个角色根据健康情况和疲劳度作出不同动作等特性。◎为3DStudioMax和Maya制作的导出工具,用于向引擎中导出赋予蒙皮权重的网格,骨骼和动画序列。游戏性系统◎提供了一个支持普通游戏对象(如游戏者,NPC,物品,武器和触发器)的面向对象的游戏框架。◎丰富的多级别AI系统,支持寻路、复杂关卡游历、单独决策和组队AI·对如触发器,门和升降机等普通游戏对象敏感的寻路框架,允许复杂的游历设定,使得NPC可以按下开关,打开门,并绕过障碍物。·游历框架带有短期战术战斗、掩护和撤退的路线网。·基于小队的AI框架,适合第一人称射击、第三人称射击和战术战斗游戏。◎AI路径在UnrealEd中可见并可由关卡编辑者编辑,允许自定义和提示◎可见的AI脚本工具,使设计者可以创建复杂的交互性游戏设定,例如游戏者目标,通用的游戏事件触发器和交互式过场动画◎UnrealMatinee,一个基于时间线的可视化序列、动画和曲线路径工具。设计者可以使用此工具建立游戏中的过场动画,可以是交互的或非交互的,通过动画序列化、移动包括摄像机在内的对象,控制声音和视觉特效,并触发游戏和AI事件。UnrealEd中的“Matinee”工具,能够编辑基于时间轴的事件序列◎支持各种平台的输出格式,包含5.1环绕立体声和高品质杜比数码音效。◎3维声源位置设置,多普勒效应。多普勒效应:是指当发声物体在运动时,声音的音调会随着物体移动速度而改变其高低——声音频率的变化,这个原理也被运用在声卡3D发声原理之中。◎在UnrealEd中的可视化音效工具可以为声音设计者提供对音效的全面的控制,声音强度,顺序,循环,过滤,调制,变调和随机化。声音参数被从代码中分离开,使设计者可以控制所有的与游戏、过场动画和动画序列相关的声音。◎支持所有平台的主要声音格式,包括PCM,ADPCM,游戏机对应的声音压缩格式和OggVorbis。◎支持游戏机上的声音流。◎Internet和局域网游戏已经成为Epic的竞赛游戏如UnrealTournament2004的一大特征。虚幻引擎长时间以来一直提供灵活的高级网络架构,适合于各种类型的游戏。◎Internet和局域网游戏在PC和所有游戏机平台上都被完全支持UnrealTournament2004的游戏中带的服务器浏览器◎虚幻引擎的网络游戏部分编程是高层的和数据驱动的,允许由Unreal脚本代码指定在客户端和服务器之间联系的变量和函数,来保留一个同步的对游戏状态的近似。底层游戏网络传输是基于UDP的并能够将可靠和不可靠传输方式结合,来对游戏感进行优化,即使在低带宽和高延迟的环境下。◎客户端-服务器模式下最多支持64个游戏者同时游戏。同时支持非服务器模式(点对点模式)下的16游戏者同时游戏。◎支持不同平台间的网络互连(例如PC服务器和游戏机客户端;Windows,MacOS和Linux客户端共同进行游戏)。◎所有游戏特性在网络游戏模式下都被支持,包括基于交通工具的多人游戏,带有NPC和机器人的组队竞技,单人模式下的协同游戏等等。支持自动下载,包括跨平台的一致的Unreal脚本代码。这项特性使得从用户自己创建的地图到奖励包,到完整的游戏mod都可以随意获得全局光照技术“UnrealLightmass”,可生成高质量的静态照明和带精确半影的软阴影、相互漫射与反射、色彩释放(colorbleeding)等下一代技术,同时还有新的分布式计算框架“Swarm”,生成光照的速度可提高最多十倍。◎“UnrealContentBrowser”(虚幻内容浏览器)基于后端数据库,支持缩略图预览、内容标签、内容收集管理,能让开发人员在海量内容里迅速找到所需资源,不必再逐个手动打开文件查看。◎可扩展统计和数据管理后端“UnrealMasterControlProgram”(虚幻主控程序),作为一种高可靠性在线服务架构,支持新闻宣布、设定管理、在线玩家追踪,以及硬件、配置、游戏状态数据搜集,并且包含一系列视觉化游戏状态工具,比如玩家活跃性区域热图刚性物体碰撞系统可以让操作的玩家充分利用游戏里的物体碰撞,角色动画碰撞,复杂真实的交通工具和物体爆炸进行娱乐。所有的渲染物体和模型都可以进行动力学属性的设置,包括摩擦力。物理碰撞音效提供了许多和动力学有关的功能和设置,包括玩家的操作,人工智能及网络功能。在虚幻的编辑器中可以直接进行物体,模型的动力学设置,并支持简单的碰撞优化及调整;运动约束编辑;交互式的物理仿真及编辑器中的tweak快速调节。虚幻的编辑器(简称为“UnrealEd”)是一个以“所见即所得”为设计理念的操作工具,它可以很好地弥补一些在3DStudioMax和Maya中无法实现的不足,并很好地运用到游戏开发里去。在可视化的编辑窗口中游戏开发人员可以直接对游戏中角色,NPC,物品道具,AI的路点及光源进行自由的摆放和属性的控制,并且全部是实时渲染的。(并且这种实时渲染还有动态的光影效果。)并且还有完整的数据属性编辑功能,可以让关卡设计人员自由地对游戏中的物件进行设置或是由程序人员通过脚本编写的形式直接进行优化设置。实时的地图编辑工具可以让游戏的美术开发人员自由地对地形进行升降的高度调节,或是通过带有alpha通过的笔刷直接对地图层进行融合和修饰。并可以在地图编辑中直接生成碰撞数据和位移贴图。图形化的材质编辑工具。开发人员可以对材质中的色彩,alpha通道及贴图坐标进行自由的调解并由程序人员来定义所需要的材质内容。虚幻的材质编辑器,采用的是和Maya,Darktree一样的“材质节点编辑”方式,操作的时候,无论是脱拽或是关联线的操作都十分的方便,至少比我经常在用的Max中的“材质层级编辑”方式好用多了)而美术制作人员则可以在材质编辑工具中利用多个简单的材质类型融合出一个复杂漂亮的高级材质类型,并可以实时地参照场景中的灯光影响。编辑器的资源管理器功能也非常的强大,可以进行快速准确的查找,观看并对游戏开发中的各种资源进行整理组织。虚幻编辑器中还为美术制作人员提供了完整的模型,骨骼和动画数据导出工具,并将它们连同编辑游戏事件所需要的声音文件,剧情脚本进行统一的编辑。在编辑器中还为开发人员提供了一个“游戏测试”的按钮,只要用鼠标点击后就可以对编辑好的游戏内容进行测试。这样的话,可以一边在“测试窗口”中观看游戏画面,一边在另一个窗口中进行实时的调整和修改,十分方便。为那些使用3dsMax和Maya进行制作的美术人员,提供了完善的导入导出插件。可以把模型导入虚幻引擎当中,包括模型的拓铺,贴图坐标,光滑。在虚幻的引擎中为了游戏开发的程序员们能够更好地进行编写,提供了3个非常具体的编写实例和百分之百开放的源代码,编辑器,Max/Maya的输出插件,以及一些公司内部开发游戏所使用到的游戏代码。虚幻的游戏播放脚本语言还提供了许多自动化的原数据供游戏开发人员参考和使用。引擎不仅可以兼容多种文件格式,还允许游戏的关卡,任务编辑人员在编辑器中直接察看游戏脚本的内容,属性并直接进行修改
2. Unity3d做什么用的
Unity3d准确的说就是一个场景编辑器,可以用它创造3D游戏,不提供源代码和SDK,但可以使用脚本语言。算是比较傻瓜的3D开发工具。
3. U3D如何做代码混淆
Unity代码混淆方案
内容提要:Unity引擎下的代码保护,由于Unity引擎的一些特殊性,实行起来较为复杂,在国内外业界并没有现成的方案。笔者通过在《QQ乐团》项目上的实际尝试,得出了一种具体可行,能够有效保护代码逻辑的方案。特此分享给关注Unity引擎的项目,希望能提供一些的参考。
背景
Unity引擎上的程序执行在Mono运行时上,使用Mono编译出的程序集格式与.NET标准一致。C#是Unity引擎下主要的开发语言,它具备不少高级语言特性,如反射、元数据、内置序列化等。但C#同时也是很容易被反编译的语言,如果不采用任何保护措施,使用常用的工具(.NET Reflector)便能很容易得到可二次编译的代码。对项目运营带来了比较大的风险。
.NET平台下通常的保护手段是混淆编译出的程序集。VisualStudio自带了一个混淆工具Dotfuscator可以对程序集进行混淆。功能包括名称修改,流程混淆,字符串加密等。经过Dotfuscator混淆后的程序集,能够避免被常用反编译工具破解。变量的表意性被破坏,同时函数的内部流程也被混淆(如下[B1] )。能有效起到保护源代码的效果。
publicclass181: 218
{
// Fields
publicuint0;
publicushort1;
publicstaticreadonlyuint2;
publicstaticreadonlyuint3;
// Methods
static181();
public181();
public95.02();
public95.02(ref515A_0, uintA_1);
public95.02(79A_0, refuintA_1);
public95.02(ref79A_0, uintA_1);
public95.02(byte[] A_0, intA_1, refuintA_2);
public95.02(ref481A_0, intA_1, charA_2);
public95.02(refstringA_0, intA_1, charA_2);
public95.02(refbyte[] A_0, intA_1, refintA_2, uintA_3);
public95.03(ref79A_0, uintA_1);
public95.03(refbyte[] A_0, intA_1, refintA_2, uintA_3);
public95.04(refbyte[] A_0, intA_1, refintA_2, uintA_3);
}
public95.00(refsbyteA_0, intA_1)
{
// This item is obfuscated and can not be translated.
goto Label_0006;
if(1!= 0)
{
}
95.0local= 95.0.0;
bytenum= 0;
local = this.0(refnum,A_1);
A_0 = (sbyte) num;
returnlocal;
Unity引擎下,Mono编译出的程序集,由于采用与.NET相同的格式标准。能够直接被Dotfuscator混淆。但Unity引擎有一些特殊的地方,使混淆工作与一般的.NET程序存在差异。第三节将主要讨论这些特殊点。
Unity引擎下代码混淆的特殊性
代码被资源引用[B2] 。Unity的可视化编辑特性在设计上的关键之处在于使代码能够以组件的形式依附到资源实例上。相比传统游戏,Unity的两类资源(scene和prefab)不仅包括数据,还包括附加在资源上的类对象。也就是说,这两类资源的存储格式中存在唯一标识某代码类型的数据。混淆流程必须不破环这种对应关系才能使资源上的代码逻辑正确被执行。(Unity这样设计的意义并不是本文讨论的重点,而另一篇分享个人对Unity可视化编辑的理解的文章中将会详细说明。)
发布到Web的Unity项目,在生成播放器可执行包(*.unity)的接口中,将编译程序集和打包这两个步骤捆绑在的一起。我们没办法像普通.NET程序那样,对编译出的程序集进行混淆后再打到播放器可执行包中。
UnityEngine按函数名进行调用。MonoBehaviour是Unity引擎的一个重要的组件基类。其上的很多方法,Unity是通过方法名称进行访问的,如Awake、Start、Update等等。这些方法如果在混淆中被改名,将使方法调用失败。这个问题相对比较好处理,Dotfuscator的重命名功能提供了排除配置。我们只要得到继承于MonoBehaviour的所有类型,就能生成相应的排除配置,告知Dotfuscator不要对这些方法进行重命名。生成的配置节选如下[B3] :
<option>xmlserialization</option>
<excludelist>
<type name="CEventMgr|CGameRoot|…|…" regex="true" excludetype="false">
<method name="Update"regex="true" />
<method name="LateUpdate"regex="true" />
<method name="FixedUpdate"regex="true" />
<methodname="Awake" regex="true" />
<customattributename="System.Runtime.CompilerServices.CompilerGeneratedAttribute"regex="true" />
<method name=".*"regex="true" />
<field name=".*"regex="true" />
</type>
<type name=".*"regex="true">
<customattributename="ANoRenameInObfuscate" regex="true" />
</type>
<type name=".*"excludetype="false" regex="true">
<method name=".*"regex="true">
<customattributename="ANoRenameInObfuscate" regex="true" />
</method>
</type>
思路
何时混淆?由于Web项目编译和打包的过程是捆绑在一起的,官方没有提供独立的接口。(之前有跟官方反馈,但目前官方并没有提供具体计划。)想自己来分析官方的打包格式是行不通并且不太科学的。仅剩的办法就是自己将代码编译成DLL,混淆之后再添加到Unity项目中。
顺着这条思路,笔者在《QQ乐团》项目上作了尝试。将项目中所有执行相关的代码(不包括编辑器扩展的代码)移出,指定相关的Unity依赖库,编译成DLL。再将此DLL复制到原项目中。这时意料之中的事情发生了——项目中所有资源上的代码引用全部丢失。为了找到资源对代码的映射形式,笔者调整Unity编辑器的设定,将资源的序列化格式改为文本格式,并进行对比分析。发现资源中是通过一个GUID来对应具体代码的[B4] 。(如下)
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 100100000}
m_GameObject: {fileID: 100000}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID:11500000, guid: , type: 1}
m_Name:
mInt: 1
mFloat: .5
中的类型虽然还没有进行过混淆,但GUID已经发生了变化。将新的GUID替换到资源文件中,引用关系果然恢复了。
Unity引擎下的特殊问题都是可以解决的。于是顺着这思路,开发了若干工具,得到了前后GUID的对应关系,并扫描所有资源以进行GUID的替换。另一方面,在混淆之后,类型的变量名发生了改变,资源中变量名赋有具体的值,也需要替换资源中的变量名对应到混淆后的变量名。这一切花费了不少的精力,终于是把工具都做成了。
然而人算不如天算,最终导致此方案走进死角的是一个之前很难意料到的问题:Unity引擎在处理DLL中的模版类型时存在缺陷——DLL中的模版类型没有GUID,不能被资源所引用。这个问题在Unity官方网站上有少量反馈,而官方承认了这个bug,且没有给出解决方案。而《QQ乐团》的项目在UI操作上比较广泛地使用了模版类型,去除模版的使用谈何容易。就这样,这么一个不经意的问题为这个尝试的方向画上了句号。
“系着枷锁跳舞”,这句话是形容的是在各种条件约束下尽可能的追求解决方案的一种状态。总结之前的失败,最终还是找到了实际可行的改进方案,并成功应用到《QQ乐团》的Web版本和微客户端版本上。
最终的思路是将项目进行分层。独立出一个不被资源引用的,包含最敏感的协议解析和各个系统模块的“逻辑层”,将逻辑层的代码独立编译成一个DLL,进行混淆再包含到项目中。逻辑层之外的代码主要包括被资源引用到的,或是系统模块部分接口定义这样的不太敏感的内容,姑且称为“行为层”。为了让逻辑层可以独立编译,我们要求逻辑层可对行为层进行引用,而行为层则只能通过留在行为层的逻辑层接口访问逻辑层。这样我们就保护了我们最重要的代码,同时绕过了资源引用代码的问题。
这个方案对项目架构提出了一定的要求。一是要求敏感代码和资源保持独立,需要一个框架来加载各个模块,而不是直接将模块代码直接附在场景物体的资源中。二是要求层次清晰,不允许反向依赖。有利于《QQ乐团》项目的消息是,《QQ乐团》从最早期就实现了一个较清晰的架构管理方法。因此花费了一定的时间进行分层,和实现接口访问机制后,就成功执行了这个方案。
实际混淆步骤。《QQ乐团》是使用VisualBuild来执行版本构建和发布流程的。以下介绍版本构建中混淆相关的流程:
从Unity项目的Assets目录中拷贝出逻辑层的代码目录(CodeGameLogic)。和编辑器扩展代码(避免混淆后编辑器扩展代码对逻辑层的依赖丢失导致编译出错)。
调用Unity.exe命令行编译剩余的行为层部分:
这个函数实际执行了:
BuildPipeline.BuildPlayer(new string[] {"Assets/obfuscated.unity" }, "WebPlayerObfuscated",
BuildTarget.WebPlayer, BuildOptions.None);
Editor程序集(也就是编辑器扩展程序集)时编译失败,中断编译过程,避免在BuildPlayer过程结束时构建生成的DLL被清理掉。BuildPlayer之前故意在Editor目录下弄一个错误的代码文件即可。
将生成的行为层DLL拷贝到逻辑层构建目录。行为层DLL的路径是在项目的Library/ScriptAssemblies下,有Assembly-CSharp.dll和Assembly-CSharp-firstpass.dll两个文件。另外也拷贝逻辑层依赖的其它DLL到构建目录,包括UnityEngine.dll,以及项目Plugins目录下的依赖库。
调用Mono的编译器mcs编译逻辑层DLL——CodeGameLogic.dll。编译命令如下:
生成DotObfuscator的配置文件”WebCfg.xml”。这里是用自己编写的工具,扫描CodeGameLogic.dll中的类型,得到不能被混淆的类型名和方法名,加入到配置文件的排出列表中。如“三。3”小节所示。
调用DotObfuscator对CodeGameLogic.dll执行混淆,得到混淆后的CodeGameLogic.dll:
将混淆后的CodeGameLogic.dll拷贝到项目中,然后构建项目。这里要注意的是,如果是构建Web项目,需要将dll拷贝到Plugins目录。如果是Standalone(即客户端)项目,直接拷贝到Assets目录下即可。另外,这次构建是不可以有编译错误的,所以第1部需要移除Editor目录下的编辑器扩展的代码。
接下来将构建好的项目与资源合并,就可以得到完整的混淆版本。
总结:
Unity项目的代码反编译较为容易。需要在重视代码混淆工作。
Unity项目的代码混淆方案实施起来限制较多。本文介绍的方案是笔者知晓的目前唯一可用的混淆方案。对项目的架构分层有强制性的要求。最好是在项目初期就考虑如何对项目进行分层,将需要保护的内容放置在被混淆的层中。
4. 谁有GL studio的学习资料
GL Studio是目前世界上最先进的人机接口(HMI)开发工具,它非常专业,因此做得非常优秀。在训练仿真领域占有非常大的份额,2005年12月的IITSEC中,至少有35家参展厂商采用它开发仪表和面板。并且它被许多软件采用,做为它们的仪表、面板和界面制作模块,例如MPI的视景仿真软件Vega Prime采用它替换了自己以前的仪表面板模块Symbology,在三维场景中显示仪表和面板。GL Studio被其它许多软件采用,一方面说明它的先进性,开发效率高、开发质量好;另一方面说明它软件结构好,非常便于重用,它完全采用面向对象技术,开发出来的应用非常容易被重用。它在Windows下的开发编译环境就是Microsoft的Visual Studio,非常便于使用,它可以编译生成.exe、.dll或ActiveX控件,它的运行不需要其它软件支撑。
GL Studio是美国DiSTI公司的旗舰产品,它是一个独立平台的快速原型工具,用来创建实时的、照片级别的、可交互的图形界面,既可以用于仿真,又可以用于实际装备。照片级别的图形显示界面的创建需要人们有两种不同类型的技能:图形艺术家和软件开发者。DiSTI设计了对图形艺术家和软件开发者都非常友好的GL Studio。GL Studio生成的c++和opengl源代码可以单独运行,也可以嵌入其他应用中;它能运行于Windows、Linux、Vxworks等操作系统上。
GL Studio特点
1)GL Studio具有极强的软件重用性
GL Studio是世界上第一个采用面向对象方法的人机接口开发工具包,其生成的HMI支持对象重用。其任何设计的对象或者由对象组成的新的对象,都可以作为一个新的重用对象。也就是说,GL Studio开发的HMI都是RSO(Reusable Software Object):
– RSO可独立运行;
– RSO具有对外接口;
– RSO包括外观和内在行为;
– RSO可以由其它RSO构成。
因此,使用GL Studio可以方便团队进行设计开发人机接口,每个团队成员开发各自的HMI,然后把这些RSO集成在一起就可以了。而且这些RSO是软件重用的资产,还可在以后的HMI开发中重用。
2)GL Studio不仅支持3D仪表而且支持场景中的3D仪表显示
GL Studio是第一个实现3D的HMI开发工具包,它开发的HMI都是3D的,而且它可以导入3D模型,把HMI布置在3D模型上,实现场景中的三维仪表显示。它直接支持的3D模型数据为:
– 3D Studio MAX ASE;
– Designers Workbench DWB;
– Alias/Wavefront OBJ;
– OpenFlight FLT。
其它3D模型数据,例如CAD(CATIA, AutoCAD, Pro/E)等数据,可以通过上述数据格式 导入到GL Studio编辑器中。
3)GL Studio开发HMI时可以实现一次开发多次发布
用户开发HMI 软件主要是应用于以下几个方面:
– 原型设计 (侧重考虑人机工程因素,用于产品的原型设计与验证)
– 使用训练 (各种与人机接口相关的培训,既可用于操作训练,又可用于维护训练)
– 课件制作 (用于本地教学和远程教育)
– 嵌入式应用(应用于真实的设备中)
据相关机构统计,在HMI以上几个应用方面中,仅关心一个方面的用户,占9%;关心二个方面的用户占30%,关心三个或三个以上方面的用户,占61%。因此GL Studio在设计时不仅可以分别满足这几个方面应用的要求,而且格外关注同时满足这几个方面应用的要求。GL Studio做到了为其中一个方面开发的HMI不更改任何设计和代码就可以应用于其它方面,这样减少了工作量,更重要的是提高了软件质量,这是其它HMI开发工具做不到的。下图是GL Studio开发的HMI同时应用于原型设计、训练模拟器和真实装备上的流程图。
4)GL Studio提供开放的对外接口
GL Studio是完善的HMI开发工具,因此其不仅提供了HMI开发平台,而且提供了开放的对外接口。它可以通过CORBA、DIS、HLA、Shared Memory、SCRAMNet® 、TCP/IP or UDP/IP、RS232/422等协议读取外界数据。可以与众多第三方软件集成在一起,例如:Vega Prime、EPX、MAK Stealth、Open Scene Graph、Delta 3D、pC-NOVA、V-Tree、X-Plane、MatLab、PowerPoint、MFC、KineMap、BlueRidge Radar、MapLink、Harris Moving Map、I-Log、ToolBook、FLTK and QT等等。
GL Studio编辑器
GL Studio编辑器是一个经过长时间实践验证的3D的所见即所得的绘制工具。它直观的用户图形界面,包括了用户所期望的所有图形界面的元素,非常易于使用,不需要任何编程知识:
1)浮动工具条
2)工具提示
3)多文档界面
4)在线查找帮助
5)内容敏感的菜单
6)最近调用的文件列表
除了众多图形应用程序都提供的画布之外,GL Studio编辑器还包含了层次视图,层次视图显示了所有设计中的对象列表,用一个可折叠的树状结构来显示。层次视图使得对象容易被提取和编辑——即使其它对象堆叠在它们上面;层次视图还可以让用户将对象和名称关联起来,名称有助于更方便地查找对象。它还集成了GL Studio代码生成器,使设计出来的图形对象很容易转换为所需要的代码,并且它可以把用户定义的源代码加入到设计对象中。
GL Studio编辑器有十几种图形原形,包括规则多边形、TrueType文本对象等等,通过原形可以组合成更复杂的对象。GL Studio编辑器支持所有的绘图操作,包括剪切、粘贴、转换、缩放、修剪、剔除、顶点编辑、插入和移除顶点、水平翻转、垂直翻转、左旋转、右旋转、自由旋转、扭曲、排列对象和改变绘图命令等等。
GL Studio编辑器可支持多视图,包括三个正交投影视图和一个自由视角的透视视图。设计出来的对象可以通过网格、无纹理或是有纹理等方式来观察。平移和缩放可以通过使用滚动条和三种不同的缩放方法来实现。为了有助于对象的布局,对齐网格的功能可以使对象在格子的边界上排成一行。格子的尺寸可以根据需要来调整。编辑器保存了在一次编辑中进行的所有操作的历史记录,允许使用者撤销已执行的任意操作,直到当前编辑器的开始状态。
GL Studio编辑器支持照片级纹理的应用。一切多边形的对象都可以贴纹理。纹理工具可以导入大多数格式的贴图,如PNG、TIFF、JPEG、BMP等。贴图能轻松地在对象上缩放、旋转和平铺,以达到预期的效果。纹理还能与对象颜色混合,并支持透明度。
GL Studio编辑器还允许使用者镶嵌复杂多边形,镶嵌工具能将复杂多边形转变为一组三角形。
GL Studio代码生成器
GL Studio代码生成器已经内嵌到GL Studio编辑器中,它允许程序员将GL Studio编辑器绘制的图形转换为C++、java、涉及安全的C++和OpenGL的源代码。
如何方便生成真实的虚拟或数字仪表和面板?最好的方法就是生成源代码,这样就可以让程序员容易将其合并到他们自己的应用程序中,因此GL Studio使用代码生成器生成可移植的C++代码。它生成的代码质量高,具有美观的格式并且容易阅读。程序员能在他们当前的开发环境和工具下应用GL Studio生成的代码,而不需要学习一个全新的开发环境。因此GL Studio是程序员为程序员设计的。
程序员有了图像的源代码后,很容易进行定制和为目标平台进行优化。尤其在性能为决定性因素的情况下,经过编译的C++程序总能有最好的效率,GL Studio生成的完美优化的遵循OpenGL标准的源代码优势非常明显。
代码生成器能提取GL Studio编辑器中的对象组,并生成定制的程序组件。这些组件能加到“组件调色板”中,开发者可以方便地将它们拖放到设计对象中。例如,一个ADI(Attitude Direction Indicator)以组件方式被创建后,将来任何需要ADI的时候都可以通过简单的拖放将其加到设计对象中。
GL Studio生成的人机接口有两种方式与外界交互,一种是读取外界数据来驱动仪表显示;一种是响应用户界面事件,实现面板操作。GL Studio代码生成器为程序员提供的是源代码,因此程序员可以通过编程以CORBA、DIS、HLA、Shared Memory、SCRAMNet® 、TCP/IP or UDP/IP、RS232/422等等协议读取外界数据。同时,GL Studio提供Call Back功能使图形化对象可以响应用户界面事件,例如触摸屏感应、鼠标点击和键盘输入等。
5. laya代码编辑器设置错误怎么办
重装完系统后,打开Laya IDE,当我切换到场景编辑器的时候,弹出错误框让我备受煎熬。
我一遍心里骂娘一遍给Laya社区BBS发帖求助,也没有人回音。怎么办,总不能再重装一遍系统吧,这不是我的风格,那就只好硬着头皮去解决这个问题了。
从弹窗中大致看到源码位置,打开源码文件夹全局搜索webGL!找到弹窗位置了!
在文件LayaAirIDE esourcesappoutvslayaEditorh5 endersuiviewereditor.max.js
的88880行
if (!WebGL.enable()){
alert("Laya3D init error,must support webGL!");
return;
}
嗯,是因为IDE需要用到WebGL功能,打开开发者工具,创建一个canvas,然后调用getContext('webgl')返回null,确实不支持。奇怪,为什么不支持呢?原来是好好的啊。
经过1天的思考,没啥思路,上网搜索一把,终于发现了重要线索:
electron webgl初始化失败blog.csdn.net
原来如此,可以尝试一下这个骚操作,问题是这个代码放哪儿呢?文章没有说。我把代码放到一个页面里面,失败,很显然这个貌似是electron的代码,于是我根据package.json中的入口js找到resources/app/out/main.js,把代码插入其中
init() {
let idepath = this.path.joim.scxhdzs.com#his.app.getPath("appData"), "LayaAirIDE");
this.fs.exists(idepath, function (exists) {
if (!exists) {
require("fs").mkdir(idepath);
}
});
this.app.commandLine.appendSwitch('ignore-gpu-blacklist');
this.app.once("ready", () => {
this.start();
});
this.ipcMain.on("openFile", () => {
console.log("----------------------------收到消息")
console.log(process.argv, "-------------------------")
})
}
重启Laya,不弹窗了,成功!
基于Electron开发的软件会有想不到的坑,也因为可以修改软件代码来解决,js真是好用!
6. 谁能告诉告诉我啊
要这个做什么:
A
A:对象代码库文件
AAM:Authorwareshocked文件
AAS:Authorwareshocked包
ABF:Adobe二进制屏幕字体
ABK:CorelDRAW自动备份文件
ABS:该类文件有时用于指示一个摘要(就像在一篇有关科学方面的文章的一个摘要或概要,取自abstract)
ACE:Ace压缩档案格式
ACL:CorelDRAW6键盘快捷键文件
ACM:Windows系统目录文件
ACP:Microsoftoffice助手预览文件
ACR:美国放射医学大学文件格式
ACT:Microsoftoffice助手文件
ACV:OS/2的驱动程序,用于压缩或解压缩音频数据
AD:AfterDark屏幕保护程序
ADA:Ada源文件(非-GNAT)
ADB:Ada源文件主体(GNAT);HP100LX组织者的约定数据库
ADD:OS/2用于引导过程的适配器驱动程序
ADF:Amiga磁盘文件
ADI:AutoCAD设备无关二进制绘图仪格式
ADM:AfterDark多模块屏幕保护;WindowsNT策略模板
ADP:FaxWork用于传真调制解调器的交互安装文件;AstoundDynamite文件
ADR:AfterDark随机屏幕保护;SmartAddress的地址簿
ADS:Ada源文件说明书(GNAT)
AFM:Adobe的字体尺度
AF2,AF3:ABC的FlowChat文件
AI:AdobeIllustrator格式图形
AIF,AIFF:音频互交换文件,SiliconGraphicandMacintosh应用程序的声音格式
AIFC:压缩AIF
AIM:AOL即时信息传送
AIS:ACDSee图形序列文件;VelvetStudio设备文件
AKW:RoboHELP的帮助工程中所有A-关键词
ALAW:欧洲电话音频格式
ALB:JASCImageCommander相册
ALL:艺术与书信库
AMS:VelvetStudio音乐模块(MOD)文件;Extreme的Tracker模块文件
ANC:CanonComputer的调色板文件,包含一系列可选的颜色板
ANI:Windows系统中的动画光标
ANS:ANSI文本文件
ANT:SimAntForWindows中保存的游戏文件
API:AdobeAcrobat使用的应用程序设计接口文件
APR:LotusApproach97文件
APS:MicrosoftVisualC++文件
ARC:LHARC的压缩档案文件
ARI:Aristotle声音文件
ARJ:RobertJungARJ压缩包文件
ART:XaraStudio绘画文件;CanonCrayola美术文件;ClipArt文件格式;另一种光线跟踪格式;AOL使用的用Johnson—Grace压缩算法压缩的标记文件
ASA:MicrosoftVisualInterDev文件
ASC:ASCⅡ文本文件;PGP算法加密文件
ASD:MicrosoftWord的自动保存文件;Microsoft高级流媒体格式(,ASF)的描述文件;可用NSREX打开VelvetStudio例子文件
ASE:VelvetStudio采样文件
ASF:Microsoft高级流媒体格式文件
ASM:汇编语言源文件,Pro/E装配文件
ASO:AstoundDynamite对象文件
ASP:动态网页文件;ProCommPlus安装与连接脚本文件;Astound介绍文件
AST:Astound多媒体文件;ClarisWorks“助手”文件
ASV:DataCAD自动保存文件
ASX:Cheyenne备份脚本文件;Microsoft高级流媒体重定向器文件,视频文件
ATT:AT<Group4位图文件
ATW:来自个人软件的AnyTimeDeluxeForWindows个人信息管理员文件
AU:Sun/NeXT/DEC/UNIX声音文件;音频U-Law(读作“mu-law”)文件格式
AVB:ComputerAssociatesInoculan反病毒软件的病毒感染后文件
AVI:MicrosoftAudioVideoInterleave电影格式
AVR:AudioVisualResearch文件格式
AVS:应用程序可视化格式
AWD:FaxVien文档
AWR:Telsis数字储存音频文件扩展名格式
Axx:ARJ压缩文件的分包序号文件,用于将一个大文件压至几个小的压缩包中(xx取01-99的数字)
A3L:Authorware3.x库文件
A4L:Authorware4.x库文件
A5L:Authorware5.x库文件
A3M,A4M:AuthorwareMacintosh未打包文件
A4P:Authorware无运行时间的打包文件
A3W,A4W,A5W:未打包的AuthorwareWindows文件
B
BAK:备份文件
BAS:BASIC源文件
BAT:批处理文件
BDF:WestPointBridgerDesigner文件
BFC:Windows95Briefcase文档
BG:BackgammonForWindows下的游戏文件
BGL:MicrosoftFlightSimulator(微软飞行模拟器)的视景文件
BI:二进制文件
BIF:GroupWise的初始化文件
BIFF:XLIFE3D格式文件
BIN:二进制文件
BK,BK
BKS:IBMBookManagerRead书架文件
BMK:书签文件
BMP:Windows或OS/2位图文件
BMI:ApogeeBioMenace数据文件
BOOK:AdobeFrameMakerBook文件
BOX:LotusNotes的邮箱文件
BPL:BorlardDelph4打包库
BQY:BrioQuery文件
BRX:用于查看多媒体对象目录的文件
BSC:MSDeveloperStudio浏览器信息文件
BSP:Quake图形文件
BS1:ApogeeBlakeStone数据文件
BS_:MicrosoftBookshelfFind菜单外壳扩展名
BTM:Norton应用程序使用的批处理文件
BUD:Quicken的备份磁盘
BUN:CakeWalk声音捆绑文件(一种MIDI程序)
BW:SGI黑白图像文件
BWV:商业波形文件
BYU:BYU的电影文件格式
B4:HelixNutsandBolts文件
C
C:C代码文件
C0l:台风波形文件
CAB:Microsoft压缩档案文件
CAD:Softdek的DrafixCAD文件
CAL:CALS压缩位图;日历计划表数据
CAM:Casio照相机格式
CAP:压缩音乐文件格式
CAS:逗号分开的ASCⅡ文件
CAT:Quicken使用的IntellCharge分类文件
CB:Microsoft干净引导文件
CBI:二进制卷格式文件(用于IBM大型机系统)
CC:VisualdBASE用户自定义类文件
CCA:cc:邮件文件
CCB:VisualBasic动态按钮配置文件
CCF:多媒体查看器配置文件,用于OS/2
CCH:Corel图表文件
CCM:Lotuscc:邮箱(例如“INBOX.CCM”)
CCO:CyberChat数据文件
CCT:MacromediaDirectorShockwave投影
CDA:CD音频轨道
CDF:Microsoft频道定义格式文件
CDI:Philip的高密盘交互格式
CDM:VisualdBASE自定义数据模块文件
CDR:CorelDRAW绘图文件;原始音频CD数据文件
CDT:CorelDRAW模板
CDX:CorelDRAW压缩绘图文件;MicrosoftVisualFoxPro索引文件
CEL:CIMFast事件语言文件
CER:证书文件(MIMEx-x509-ca-cert)
CFB:Compton的多媒文件
CFG:配置文件
CFM:CotdFusion模板文件;VisualdBASEWindows用户定制表单
CGI:公共网关接口脚本文件
CGM:计算机图形元文件
CH:OS/2配置文件
CHK:由Windows磁盘碎片整理器或磁盘扫描保存的文件碎片
CHM:编译过的HTML文件
CHR:字符集(字体文件)
CHP:VenturaPublisher章节文件
CHT:ChartViem文件;HarvardGraphics矢量文件
CIF:AdaptecCD创建器CD映像文件
CIL:ClipGallery下载包
CIM:SimCity2000文件
CIN:OS/2改变控制文件用于跟踪INI文件中的变化
CK1:iD/ApogeeCommanderKeen1数据文件
CK2:iD/ApogeeCommanderKeen2数据文件
CK3:iD/ApogeeCommanderKeen3数据文件
CK4:iD/ApogeeCommanderKeen4数据文件
CK5:iD/ApogeeCommanderKeen5数据文件
CK6:iD/ApogeeCommanderKeen6数据文件
CLASS:Java类文件
CLL:CrickSoftwareClicker文件
CLP:Windows剪贴板文件
CLS:VisualBasic类文件
CMD:WindowsNT,OS/2的命令文件;DOSCD/M命令文件;dBASEⅡ程序文件
CMF:Corel元文件
CMG:Chessmaster保存的游戏文件
CMP:JPEG位图文件;地址文档
CMV:CorelMove动画文件
CMX:CorelPresentationExchange图像
CNF:Telnet,Windows和其他其内格式会发生改变的应用程序使用的配置文件
CNM:Windows应用程序菜单选项和安装文件
CNQ:CompuworksDesignShop文件
CNT:Windows(或其他)系统用于帮助索引或其他目的内容文件
COB:TrueSpace2对象文件
COD:MicrosoftC编译器产生的可显示机器码/汇编代码文件,其中附有源C代码作为注释
COM:命令文件(程序)
CPD:CorelPrintOffice文件(图形)
CPD,CPE传真覆盖文档
CPI:MicrosoftMS-DOS代码页信息文件
CPL:控制面板扩展名,Corel颜色板
CPO:Corel打印存储文件
CPP:C++代码文件
CPR:Corel提供说明书文件
CPT:Corel照片-绘画图像
CPX:CorelPresentationExchange压缩图形文件
CRD:WindowsCardfile文件
CRP:Corel提供的运行时介绍文件;VisualdBASE自定义报表文件
CRT:认证文件
CSC:Corel脚本文件
CSP:PCEmceeOn_Screen图像
CSS:瀑布式表格文件
CST:MacromediaDirectorCast文件
CSV:逗号分隔的值文件
CT:ScitexCT位图文件;PaintShopProGrapic编辑器文件
CTL:通常用于表示一个包含控件信息的文件;FaxWork用它来保持有关每个传真收到或发出的信息
CUE:Microsoft提示牌数据文件
CUR:Windows光标文件
CUT:DrHalo位图文件
CV:Corel版本的档案文件;MicrosoftCodeView信息屏幕文件
CWK:ClarisWorks数据文件.
CWS:ClarisWorks模块
CXT:MacromediaDirector受保护的(不可编辑的)投影文件
CXX:C++源代码文件
D
DAT:数据文件;WrodPerfect合并数据文件;用于一些MPEG格式的文件
DB:Borland的Paradox7表
DBC:MicrosoftVisualFoxPro数据库容器文件
DBF:dBASE文件,一种由Ashton-Tate创建的格式,可以被ACT!、Lipper、FoxPro、Arago、Wordtech、Xbase和类似数据库或与数据库有关产品识别;可用数据文件(能被Excel97打开);Oracle8.1.x表格空间文件
DBX:DataBearn图像;MicrosoftVisualFoxPro表格文件
DCM:DCM模块格式文件
DCR:冲击波文件
DCS:桌面颜色分隔文件
DCT:MicrosoftVisualFoxPro数据库容器
DCU:Delphi编译单元文件
DCX:MicrosoftVisualFoxPro数据库容器;基于PCX的传真图像;宏
DC5:DataCAD绘图文件
DDF:Btrieve或Xtrieve数据定义文件,它包含用于描述Btrieve或Xtrieve文件的元数据
DDIF:DigitalEquipment或Compaq格式,用于保存他们图像与字处理文档
DEF:SmartWareⅡ数据文件;C++模块定义文件
DEFI:Oracle7卸载脚本文件
DEM:用于表示数字高度模型的USGS基准的文件
DER:认证文件
DEWF:MacintoshSoundCap/SoundEdit录音设备格式
DGN:Macintosh95CAD绘图文件
DIB:设备无关位图
DIC:目录
DIF:可进行数据互换的电子表格
DIG:DigiLink格式;SoundDesignerⅠ音频文件
DIR:MacromediaDirector文件
DIZ:描述文件
DLG:C++对话框脚本文件
DLL:动态链接库
DLS:可下载声音文件
DMD:VisualdBASE数据模块文件
DMF:X-Trakker音乐模块(MOD)文件
DOC:FrameMaker或FrameBuilder文档;WordStar文档、WordPerfect文档、MicrosoftWord文档;DisplayWrite文档
DOT:MicrosoftWord文档模板
DPL:BorlandDelph3压缩库
DPR:BorlandDelphi工程头文件
DRAW:Acorn的基于对象的矢量图像文件
DRV:驱动程序
DRW:MicrografxDesigner/Draw;Pro/E绘画文件
DSF:MicrografxDesignerVFX文件
DSG:DOOM保存的文件
DSM:DynamicStudio音乐模块(MOD)文件
DSP:MicrosoftDeveloperStudio工程文件
DSQ:CorelQUERY(查询)文件
DST:刺绣机图形文件
DSW:MicrosoftDeveloperStudio工作区文件
DTA:WordBank(世界银行)的STARS数据文件
DTD:SGML文档类型定义(DTD)文件
DTED:地面高度数字数据(图形的数据格式)文件
DTF:SymantecQ&A相关的数据库数据文件
DTM:DigiTrakker模块文件
DUN:Microsoft拔号网络导出文件
DV:数字视频文件(MIME)
DWD:DiamondWare数字化文件
DWG:AutoCAD工程图文件;AutoCAD或GenericCADD老版本的绘图格式
DXF:可进行互交换的绘图文件格式,二进制的DWG格式的文本表示;数据交换文件
DXR:MacromediaDirector受保护(不可编辑)电影文件
D64:Commodore的64位模拟磁盘图像文件
E
EDA:EnsoniqASR磁盘映像
EDD:元素定义文档(FrameMaker+SGML文档)
EDE:EnsoniqEPS磁盘映像
EDK:EnsoniqKT磁盘映像
EDQ:EnsoniqSQ1/SQ2/Ks32磁盘映像
EDS:EnsoniqSQ80磁盘映像
EDV:EnsoniqVFX-SD磁盘映像
EFA:EnsoniqASR文件
EFE:EnsoniqEPS文件
EFK:EnsoniqKT文件
EFQ:EnsoniqSQ1/SQ2/Ks32文件
EFS:EnsoniqSQ80文件
EFV:EnsoniqVFX-SD文件
EMD:ABT扩展模块
EMF:Windows增强元文件
EML:MicrosoftOutlookExpress邮件消息(MIMERTC822)文件
ENC:重演文件
ENFF:中性文件格式扩展名
EPHTML:Perl解释增强HTML文件
EPS:压缩的PostScript图像
EPSF:压缩的PostScript文件
ERI:ERWin文件
ERR:当RobooHELP帮助编译器企图编译一个帮助系统源文件时用来存储错误消息的文件
EPX:ERWin文件
ESPS:ESPS音频文件
EUI:EnsoniqESP家族的压缩磁盘映像
EVY:特使文档
EWL:MicrosoftEncarta文档
EXC:MicrosoftWord禁止字字典
EXE:可执行文件(程序)
F
F:FORTRAN文件
F2R:Farandoyle线性模块格式
F3R:Farandoyle分块线性模块格式
F77:FORTRAN文件
F90:FORTRAN文件
FAR:FradoleComposer音乐模块(MOD)文件
FAV:MicrosoftOutlook导航条
FAX:传真类型图像
FBK:Navison金融备份
FCD:虚拟CD-ROM
FDB:Navison金融数据库
FDF:AdobeAcrobat表单文档文件
FEM:CADRE有限元素网络文件
FFA,FFL,FFO,FFK:Microsoft快速查找文件
FFF:GUSPnP银行文件格式
FFT:最终格式文本(IBM的DCA一部分)
FH3:AlsFreehand3绘图文件
FIF:Fractal图像文件
FIG:REND386/AVRIL使用的文件格式
FITS:CCD照相机图像;灵活图像传输系统
FLA:MacromediaFlash电影
FLC:AutodeskFLIC动画文件
FLF:CorelParadox产生的格式:NavisonFinancials许可文件;OS/2驱动程序文件
FLI:AutodeskFLIC动画
FLT:StarTrekker音乐模块(MOD)文件;MultiGenInc的OpenFlight使用的文件格式;Corel过滤器文件
FM:AdobeFrameMaker文档
FMB:Oracle4.0版或以后版本表单的二进制源代码文件
FML:文件镜象列表(GetRight)
FMT:Oracle4.0版或以后版本表单的文本格式;MicrosoftSchele+打印文件
FMX:Oracle4.0版或以后版本可执行表单
FND:MicrosoftExplorer保存的搜索文件(Findapplet)
FNG:字体组文件(字体导航器,FontNavigator)
FNK:FunkTracker模块格式
FOG:Fontographer模块字体
FON:系统字体
FOR:FORTRAN文件
FOT:字体相关文件
FP:FileMakerPro文件
FP1:FlyingPigsforWindows数据文件
FP3:FileMakerPro文件
FPT:FileMakerPro文件;MicrosoftFoxPro备注字体文件
FPX:FlashPix位图
FRM:表单;FrameMaker或FrameBuilder文档;Oracle可执行表(3.0版或早期版本);VisualBasic表单;WordPerfectMerge表单;DataCAD标志报表文件
FRT:MicrosoftFoxPro报表文件
FRX:VisualBasic表单文本;MicrosoftFoxPro报表文件
FSF:fPrintAuditTool文件格式
FSL:Borland的Paradox7表单;CorelParadox保存的表单
FSM:Parandoyle示例格式
FT:LotusNotes全文本索引
FTG:全文本搜索组文件,由Windows帮助系统查找时产生——可以删除,并在需要时重建起来
FTS:全文本搜索引文件,由Windows帮助系统查找时产生
FW2:FrameworkⅡ文件
FW3:FrameworkⅢ文件
FW4:FrameworkⅣ文件
FXP:经MicrosoftFoxPro编译的源文件
FZB:CasioFZ-1银行转储
FZF:CasioFZ-1完全转储
FZV:CasioFZ-1声音转储
G
G721:RawCCITTG.721
G723:RawCCITTG.7233或5bitADPCM格式数据
GAL:Corel多媒体管理器相集
GCD:GenericCADD绘画文件(后续版本)
GCP:GroundControlPoint(地面控制点)文件,用于远景数据形成图像过程,经常用于生成图工程—CHIPS()使用这些文件
GDB:InterBase数据库文件
GDM:铃声、口哨声和声音板模块格式
GED:GEDCOM系谱数据文件,用于记录和交换系谱数据的流行格式;图形环境文档绘画
GEM:GEM元文件
GEN:Ventura产生的文本文件
GetRight:GetRight未完成的下载文件
GFC:Patton&PattonFlowCharting4flowchart文件
GFI,GFX:Genigraphics图形链接表示文件
GHO:Norton克隆磁盘映像
GID:Windows95全局索引文件(包括帮助状态)
GIF:CompuServe位图文件
GIM,GIX:Genigraphics图形链接介绍文件
GKH:EnsoniqEPS家簇磁盘映像文件
GKS:GravisGripKey文档
GL:动画格式
GNA:Genigraphics图形链接介绍文件
GNT:生成代码,MicroFocus属性格式里的可执行代码
GNX:Genigraphics图形链接介绍文件
GRA:MicrosoftGraph文件
GRD:用于远程视景数据产生地图过程的格式文件,通常应用于形成地图工程—CHIPS()使用这些文件
GRF:Grapher(GoldenSoftware公司)图形文件
GRP:程序管理组
GSM:RawGSM6.10音频流;Raw“bytealigned(比特对齐的)”GSM6.10音频流;USRobotics语音调制解调器
GTK:Graoumftracker(老)音乐模块(MOD)文件
GT2:Graoumftracker(新)音乐模块(MOD)文件
GWX,GWZ:Cenigraphis图形链接介绍文件
GZ:UNIXgzip压缩文件
H
H:C程序头文件
HCM:IBMHCM配置文件
HCOM:声音工具HCOM格式
HCR:IBMHCD/HCM产品配置文件
HDF:高级计算机应用程序本地中心(NCSA)geospatialHierarchial数据格式文件
HED:HighEdit文档
HEL:MicrosoftHellbender格式保存的游戏文件
HEX:MacintoshBinHex2.0文件
HGL:HP图形语言绘图文件
HH:映射文件,包括一些话题ID和在帮助文件系统中话题的映射数字—允许运行中应用程序发送给用户合适的上下文帮助话题
HLP:帮助文件;DateCADWindows帮助文件
HOG:LucasArts的DarkForcesWAD文件
HPJ:VisualBasic帮助工程
HPP:C++程序头文件
HQX:MacintoshBinHex4.0文件
HST:历史文件
HT:HyperTerminal(超级终端)
HTM,HTML:超文本文档
HTT:Microsoft超文本模板
HTX:扩展HTML模板
HXM:Descent2HAM文件扩展
I
ICA:Citrix文件
ICB:Targa位图文件
ICC:Kodak打印机格式文件
ICL:图标库文件
ICM:图形颜色匹配配置文件
ICO:Windows图标
IDB:MSDev中间层文件
IDD:MIDI设备定义
IDF:MIDI设备定义(Windows95需要的文件)
IDQ:Internet数据查询文件
IDX:MicrosoftFoxPro相关数据库索引文件;SymantecQ&A相关数据库索引文件;MicrosoftOutlookExpress文件
IFF:交换格式文件;AmigaILBM
IGES:初始图形交换说明文件
IGF:插入系统元文件
IIF:QuickBooksforWindows交换文件
ILBM:位图图形文件
IMA:WinImage磁盘映像文件
IMG:GEM映像
IMZ:WinImage压缩磁盘映像文件
INC:汇编语言或动态服务器包含文件
INF:信息文件
INI:初始化文件;MWaveDSPSynth的“nwsynth.ini”GMS安装;CravisUltrasoundbank安装
INP:Oracle3.0版或早期版本的表单源代码
INRS:INRS远程通信声频
INS:InstallShield安装脚本;X-Internet签字文件;EnsoniqEPS字簇设备;Cell/ⅡMAC/PC抽样设备
INT:中间代码,当一个源程序经过语法检查后编译产生一个可执行代码
IOF:Findit文档
IQY:MicrosoftInternet查询文件
ISO:根据ISD9660有关CD-ROM文件系统标准列出CD-ROM上的文件
ISP:X-Internet签字文件
IST:数字跟踪设备文件
ISU:InstallShield卸装脚本
IT:脉冲跟踪系统音乐模块(MOD)文件
ITI:脉冲跟踪系统设备
ITS:脉冲跟踪系统抽样,Internet文档位置
IV:OpenInventor中使用的文件格式
IVD:超过20/20微观数据维数或变量等级文件
IVP:超过20/20的用户子集配置文件
IVT:超过20/20表或集合数据文件
IVX:超过20/20微数据目录文件
IW:Idlewild屏幕保护程序
IWC:InstallWatch文档
J
J62:Ricoh照相机格式
JAR:Java档案文件(一种用于applet和相关文件的压缩文件)
JAVA:Java源文件
JBF:PaintShopPro图像浏览文件
JFF,JFIF,JIF:JPEG文件
JMP:SAS的JMPDiscovery表格统计文件
JN1:EpicMegaGames的JilloftheJungle数据文件
JPE,JPEG,JPG:JPEG图形文件
JS:javascript源文件
JSP:HTML网页,其中包含有对一个Javaservlet的参考
JTF:JPEG位图文件
K
K25:Kurzweil2500抽样文件
KAR:卡拉OKMIDI文件(文本+MIDI)
KDC:Kodak光增强器
KEY:DataCAD图标工具条文件
KFX:KoFakGroup4图像文件
KIZ:Kodak数字明信片文件
KKW:RoboHELP帮助工程索引设计器中与主题无关的K开头的所有关键字
KMP:KorgTrinityKeyMap文件
KQP:Konica照相机本地文件
KR1:Kurzweil2000抽样(多软驱)文件
KRZ:Kurzweil2000抽样文件
KSF:KorgTrinity抽样文件
KYE:Kye游戏数据
L
LAB:VisualdBASE标签文件
LBM:DeluxePaint位图文件
LBT,LBX:MicrosoftFoxPro标签文件
LDB:MicrosoftAccess加锁文件
LDL:CorelParadox分发库
LEG:Legacy文档
LES:Logitech娱乐系统游戏配置文件(与REC文件一样)
LFT:3DStudio(DOS)放样文件
LGO:Paintbrush(Microsoft画图应用程序)的徽标文件
LHA:LZH更换文件后缀
LIB:库文件
LIN:DataCAD线型文件
LIS:结构化查询报告(SQR)程序产生的输出文件
LLX:Laplink交换代理
LNK:Windows快捷方式文件
LOG:日志文件
LPD:HelixNut和Bolt文件
LRC:Intel可视电话文件
LSL:CorelParadox保存的库文件
LSP:AutoLISP、CommonLISP和其他LISP语言文件
LST:列表文件
LU:ThoughtWing库单元文件
LVL:ParallaxSoftware的MinerDescent/D2Level扩展
LWLO:Lightwave分层对象文件
LWOB:Lightwave对象文件
LWP:LotusWordPro96/97文件
LWSC:Lightwave视景文件
LYR:DataCAD层文件
LZH:LHARC压缩档案
LZS:Skyroads数据文件
M
M1V:MPEG相关文件(MIME“mpeg”类型)
M3D:CorelMotion3D动画文件
M3U:MPEGURL(MIME声音文件)
MAC:MacPaint图像文件
MAD:MicrosoftAccess模块文件
MAF:MicrosoftAccess表单文件
MAG:在一些日本文件中发现的图形文件格式
MAGIC:魔力邮件监视器配置文件
MAK:VisualBasil或MicrosoftVisualC++工程文件
MAM:MicrosoftAccess宏
MAN:UNIX手册页输出
MAP:映射文件;DukeNukem3DWAD游戏文件
MAQ:MicrosoftAccess查询文件
MAR:MicrosoftAccess报表文件
MAS:文件
MAT:MicrosoftAccess表;3DStudioMAX材料库
MAUD:MAUD抽样格式
MAX:Kinetx的3DStudioMAX文件;该格式用于一个3D场景文件;Paperport文件;OrCAD设计文件
MAZ:Hover迷路数据;Division的dVS/dVISE使用的文件格式
MB1:ApogeeMonsterBash数据文件
MBOX:BerkeleyUnix邮箱格式
MBX:MicrosoftOutlook保存email格式;Eudora邮箱
MCC:Dailerl0呼叫卡
MCP:MetrowerksCodeWarrior工程文件
MCR:DataCAD键盘宏文件
MCW:MicrosoftWord的Macintosh文档
MDA:MicrosoftAccess内抽入器;MicrosoftAccess2.0版及其后续版本的工作组事件
MDB:MicrosoftAccess数据库
MDE:MicrosoftAccessMDE文件
MDL:数字跟踪器音乐模块(MOD)文件;Quake模块文件
MDN:MicrosoftAccess空数据库模板
MDW:MicrosoftAccess工作组文件
MDZ:MicrosoftAccess向导模板文件
MED:音乐编辑器,OctaMED音乐模块(MOD)文件
MER:电子表格/数据库数据交换格式;FileMaker、Excel及其他软件能识别
MET:表示管理器元文件
MFG:Pro/ENGINEER制造文件
MGF:在材料与
7. ue44.27和4.27.1有区别吗
编辑器不同。
ue44.27版本中包含了许多相机内视效工作的新功能,其中许多功能都在EpicGames新发布的实景Demo中为大家进行了展示。UE源码升级到了4.27.1,需要同步看源码的同学注意更新,如果要在PC的UE编辑器开启移动端渲染管线,可以选择等待Shader编译完成,UE编辑器的视口内便是移动端的预览效果。
在工作中遇见了游戏场景内3Dui和曲面ui的需求,大致看了下ue44.27的实现方式,简单来说就是将widget渲染到一个RT上,然后将RT赋给一个动态材质,在场景代理中动态构建一个mesh并使用这个动态材质。
8. 谁能告诉我所有的扩展名分别代表什么啊
★常用文件扩展名列表
A 对象代码库文件
AAM Authorware shocked文件
AAS Authorware shocked包
ABF Adobe二进制屏幕字体
ABK CorelDRAW自动备份文件
ABS 该类文件有时用于指示一个摘要(就像在一篇有关科学方面的文章的一个摘要或概要,取自abstract)
ACE Ace压缩档案格式
ACL CorelDRAW 6键盘快捷键文件
ACM Windows系统目录文件
ACP Microsoft office助手预览文件
ACR 美国放射医学大学文件格式
ACT Microsoft office助手文件
ACV OS/2的驱动程序,用于压缩或解压缩音频数据
AD After Dark屏幕保护程序
ADA Ada源文件(非-GNAT)
ADB Ada源文件主体(GNAT);HP100LX组织者的约定数据库
ADD OS/2用于引导过程的适配器驱动程序
ADF Amiga磁盘文件
ADI AutoCAD设备无关二进制绘图仪格式
ADM After Dark多模块屏幕保护;Windows NT策略模板
ADP FaxWork用于传真调制解调器的交互安装文件;Astound Dynamite文件
ADR After Dark随机屏幕保护;Smart Address的地址簿
ADS Ada源文件说明书(GNAT)
AFM Adobe的字体尺度
AF2,AF3 ABC的FlowChat文件
AI Adobe Illustrator格式图形
AIF,AIFF 音频互交换文件,Silicon Graphic and Macintosh应用程序的声音格式
AIFC 压缩AIF
AIM AOL即时信息传送
AIS ACDSee图形序列文件;Velvet Studio设备文件
AKW RoboHELP的帮助工程中所有A-关键词
ALAW 欧洲电话音频格式
ALB JASC Image Commander相册
ALL 艺术与书信库
AMS Velvet Studio音乐模块(MOD)文件;Extreme的Tracker模块文件
ANC Canon Computer的调色板文件,包含一系列可选的颜色板
ANI Windows系统中的动画光标
ANS ANSI文本文件
ANT SimAnt For Windows中保存的游戏文件
API Adobe Acrobat使用的应用程序设计接口文件
APR Lotus Approach 97文件
常用文件扩展名及含义(B开头)
BIN 二进制文件
BK,BK$ 有时用于代表备份版本
BKS IBM BookManager Read书架文件
BMK 书签文件
BMP Windows或OS/2位图文件
BMI Apogee BioMenace数据文件
BOOK Adobe FrameMaker Book文件
BOX Lotus Notes的邮箱文件
BPL Borlard Delph 4打包库
BQY BrioQuery文件
BRX 用于查看多媒体对象目录的文件
BSC MS Developer Studio浏览器信息文件
BSP Quake图形文件
BS1 Apogee Blake Stone数据文件
BS_ Microsoft Bookshelf Find菜单外壳扩展名
BTM Norton 应用程序使用的批处理文件
BUD Quicken的备份磁盘
BUN CakeWalk 声音捆绑文件(一种MIDI程序)
BW SGI黑白图像文件
BWV 商业波形文件
BYU BYU的电影文件格式
B4 Helix Nuts and Bolts文件
常用扩展名及含义(C开头)
C C代码文件
C0l 台风波形文件
CAB Microsoft压缩档案文件
CAD Softdek的Drafix CAD文件
CAL CALS压缩位图;日历计划表数据
CAM Casio照相机格式
CAP 压缩音乐文件格式
CAS 逗号分开的ASCⅡ文件
CAT Quicken使用 的IntellCharge分类文件
CB Microsoft干净引导文件
CBI 二进制卷格式文件(用于IBM大型机系统)
CC Visual dBASE用户自定义类文件
CCA cc:邮件文件
CCB Visual Basic动态按钮配置文件
CCF 多媒体查看器配置文件,用于OS/2
CCH Corel图表文件
CCM Lotus cc:邮箱(例如“INBOX.CCM”)
CCO CyberChat数据文件
CCT Macromedia Director Shockwave投影
CDA CD音频轨道
CDF Microsoft频道定义格式文件
CDI Philip的高密盘交互格式
CDM Visual dBASE自定义数据模块文件
CDR CorelDRAW绘图文件;原始音频CD数据文件
CDT CorelDRAW模板
CDX CorelDRAW压缩绘图文件;Microsoft Visual FoxPro索引文件
CEL CIMFast事件语言文件
CER 证书文件(MIME x-x509-ca-cert)
CFB Compton的多媒文件
CFG 配置文件
CFM CotdFusion模板文件;Visual dBASE Windows用户定制表单
CGI 公共网关接口脚本文件
CGM 计算机图形元文件
CH OS/2配置文件
CHK 由Windows磁盘碎片整理器或磁盘扫描保存的文件碎片
CHM 编译过的HTML文件
CHR 字符集(字体文件)
CHP Ventura Publisher章节文件
CHT ChartViem文件;Harvard Graphics矢量文件
CIF Adaptec CD 创建器 CD映像文件
CIL Clip Gallery下载包
CIM SimCity 2000文件
CIN OS/2改变控制文件用于跟踪INI文件中的变化
CK1 iD/Apogee Commander Keen 1数据文件
CK2 iD/Apogee Commander Keen 2数据文件
CK3 iD/Apogee Commander Keen 3数据文件
CK4 iD /Apogee Commander Keen 4数据文件
CK5 iD /Apogee Commander Keen 5数据文件
CK6 iD /Apogee Commander Keen 6数据文件
CLASS Java类文件
CLL Crick Software Clicker文件
CLP Windows 剪贴板文件
CLS Visual Basic类文件
CMD Windows NT,OS/2的命令文件;DOS CD/M命令文件;dBASEⅡ程序文件
CMF Corel元文件
CMG Chessmaster保存的游戏文件
CMP JPEG位图文件;地址文档
CMV Corel Move动画文件
CMX Corel Presentation Exchange图像
CNF Telnet,Windows和其他其内格式会发生改变的应用程序使用的配置文件
CNM Windows应用程序菜单选项和安装文件
CNQ Compuworks Design Shop文件
CNT Windows(或其他)系统用于帮助索引或其他目的内容文件
COB TrueSpace 2对象文件
COD Microsoft C编译器产生的可显示机器码/汇编代码文件,其中附有源C代码作为注释
COM 命令文件(程序)
CPD,CPE 传真覆盖文档
CPI Microsoft MS-DOS代码页信息文件
CPL 控制面板扩展名,Corel颜色板
CPO Corel打印存储文件
CPP C++代码文件
CPR Corel提供说明书文件
CPT Corel 照片-绘画图像
CPX Corel Presentation Exchange压缩图形文件
CRD Windows Cardfile文件
CRP Corel 提供的运行时介绍文件;Visual dBASE自定义报表文件
CRT 认证文件
CSC Corel脚本文件
CSP PC Emcee On_Screen图像
CSS 瀑布式表格文件
CST Macromedia Director Cast文件
CSV 逗号分隔的值文件
CT Scitex CT位图文件;Paint Shop Pro Grapic编辑器文件
CTL 通常用于表示一个包含控件信息的文件;FaxWork用它来保持有关每个传真收到或发出的信息
CUE Microsoft提示牌数据文件
CUR Windows光标文件
CUT Dr Halo位图文件
CV Corel版本的档案文件;Microsoft CodeView信息屏幕文件
CWK ClarisWorks数据文件.
CWS ClarisWorks模块
CXT Macromedia Director受保护的(不可编辑的)投影文件
CXX C++源代码文件
常用扩展名及含义(D开头)
DAT 数据文件;WrodPerfect合并数据文件;用于一些MPEG格式的文件
DB Borland的Paradox 7表
DBC Microsoft Visual FoxPro数据库容器文件
DBF dBASE文件,一种由Ashton-Tate创建的格式,可以被ACT!、Lipper、FoxPro、Arago、Wordtech、Xbase和类似数据库或与数据库有关产品识别;可用数据文件(能被Excel 97打开);Oracle 8.1.x表格空间文件
DBX DataBearn图像;Microsoft Visual FoxPro表格文件
DCM DCM模块格式文件
DCR 冲击波文件
DCS 桌面颜色分隔文件
DCT Microsoft Visual FoxPro数据库容器
DCU Delphi编译单元文件
DCX Microsoft Visual FoxPro数据库容器;基于PCX的传真图像;宏
DC5 DataCAD绘图文件
DDF Btrieve或Xtrieve数据定义文件,它包含用于描述Btrieve或Xtrieve文件的元数据
DDIF Digital Equipment或 Compaq格式,用于保存他们图像与字处理文档
DEF SmartWareⅡ数据文件;C++模块定义文件
DEFI Oracle 7 卸载脚本文件
DEM 用于表示数字高度模型的USGS基准的文件
DER 认证文件
DEWF Macintosh Sound Cap/Sound Edit录音设备格式
DGN Macintosh 95 CAD绘图文件
DIB 设备无关位图
DIC 目录
DIF 可进行数据互换的电子表格
DIG DigiLink格式;Sound DesignerⅠ音频文件
DIR MacromediaDirector文件
DIZ 描述文件
DLG C++对话框脚本文件
DLL 动态链接库
DLS 可下载声音文件
DMD Visual dBASE数据模块文件
DMF X-Trakker音乐模块(MOD)文件
DOC FrameMaker或FrameBuilder文档;Word Star文档、Word Perfect文档、Microsoft Word文档;DisplayWrite文档
DOT Microsoft Word文档模板
DPL Borland Delph3压缩库
DPR Borland Delphi工程头文件
DRAW Acorn的基于对象的矢量图像文件
DRV 驱动程序
DRW Micrografx Designer/Draw;Pro/E绘画文件
DSF Micrografx Designer VFX文件
DSG DOOM保存的文件
DSM Dynamic Studio音乐模块(MOD)文件
DSP Microsoft Developer Studio工程文件
DSQ Corel QUERY(查询)文件
DST 刺绣机图形文件
DSW Microsoft Developer Studio工作区文件
DTA Word Bank(世界银行)的STARS数据文件
DTD SGML文档类型定义(DTD)文件
DTED 地面高度数字数据(图形的数据格式)文件
DTF Symantec Q&A相关的数据库数据文件
DTM DigiTrakker模块文件
DUN Microsoft拔号网络导出文件
DV 数字视频文件(MIME)
DWD DiamondWare数字化文件
DWG AutoCAD工程图文件;AutoCAD或Generic CADD老版本的绘图格式
DXF 可进行互交换的绘图文件格式,二进制的DWG格式的文本表示;数据交换文件
DXR Macromedia Director受保护(不可编辑)电影文件
D64 Commodore的64位模拟磁盘图像文件
常用扩展名及含义(E开头)
EDA Ensoniq ASR磁盘映像
EDD 元素定义文档(FrameMaker+SGML文档)
EDE Ensoniq EPS磁盘映像
EDK Ensoniq KT磁盘映像
EDQ Ensoniq SQ1/SQ2/Ks32磁盘映像
EDS Ensoniq SQ80磁盘映像
EDV Ensoniq VFX-SD磁盘映像
EFA Ensoniq ASR文件
EFE Ensoniq EPS文件
EFK Ensoniq KT文件
EFQ Ensoniq SQ1/SQ2/Ks32文件
EFS Ensoniq SQ80文件
EFV Ensoniq VFX-SD文件
EMD ABT扩展模块
EMF Windows增强元文件
EML Microsoft Outlook Express邮件消息(MIME RTC822)文件
ENC 重演文件
ENFF 中性文件格式扩展名
EPHTML Perl解释增强HTML文件
EPS 压缩的PostScript图像
EPSF 压缩的PostScript文件
ERI ERWin文件
ERR 当RobooHELP帮助编译器企图编译一个帮助系统源文件时用来存储错误消息的文件
EPX ERWin文件
ESPS ESPS音频文件
EUI Ensoniq ESP家族的压缩磁盘映像
EVY 特使文档
EWL Microsoft Encarta文档
EXC Microsoft Word禁止字字典
EXE 可执行文件(程序)
常用扩展名及含义(F开头)
F FORTRAN文件
F2R Farandoyle线性模块格式
F3R Farandoyle分块线性模块格式
F77 FORTRAN文件
F90 FORTRAN文件
FAR Fradole Composer音乐模块(MOD)文件
FAV Microsoft Outlook导航条
FAX 传真类型图像
FBK Navison 金融备份
FCD 虚拟CD-ROM
FDB Navison 金融数据库
FDF Adobe Acrobat表单文档文件
FEM CADRE有限元素网络文件
FFA,FFL,FFO,FFK Microsoft快速查找文件
FFF GUS PnP银行文件格式
FH3 Als Freehand 3绘图文件
FIF Fractal图像文件
FIG REND386/AVRIL使用的文件格式
FITS CCD照相机图像;灵活图像传输系统
FLA Macromedia Flash电影
FLC Autodesk FLIC动画文件
FLF Corel Paradox产生的格式:Navison Financials许可文件;OS/2驱动程序文件
PLI Autodesk FLIC动画
FLT StarTrekker音乐模块(MOD)文件;MultiGen Inc的Open Flight使用的文件格式;Corel过滤器文件
FM Adobe FrameMaker文档
FMB Oracle4.0版或以后版本表单的二进制源代码文件
FML 文件镜象列表(GetRight)
FMT Oracle 4.0版或以后版本表单的文本格式;Microsoft Schele+ 打印文件
FMX Oracle 4.0版或以后版本可执行表单
FND Microsoft Explorer保存的搜索文件(Find applet)
FNG 字体组文件(字体导航器,Font Navigator)
FNK Funk Tracker模块格式
FOG Fontographer模块字体
FON 系统字体
FOR FORTRAN文件
FOT 字体相关文件
FP FileMaker Pro文件
FP1 Flying Pigs for Windows数据文件
FP3 FileMaker Pro文件
FPT FileMaker Pro文件;Microsoft Fox Pro备注字体文件
FPX FlashPix位图
FRM 表单;Frame Maker或Frame Builder文档;Oracle可执行表(3.0版或早期版本);Visual Basic表单;WordPerfect Merge表单;DataCAD标志报表文件
FRT Microsoft FoxPro报表文件
FRX Visual Basic表单文本;Microsoft FoxPro报表文件
FSF fPrint Audit Tool文件格式
FSL Borland的Paradox 7表单;Corel Paradox保存的表单
FSM Parandoyle示例格式
FT Lotus Notes全文本索引
FTG 全文本搜索组文件,由Windows帮助系统查找时产生——可以删除,并在需要时重建起来
FTS 全文本搜索引文件,由Windows帮助系统查找时产生
FW2 Framework Ⅱ文件
FW3 Framework Ⅲ文件
FW4 Framework Ⅳ文件
FXP 经Microsoft FoxPro编译的源文件
FZB Casio FZ-1银行转储
FZF Casio FZ-1完全转储
FZV Casio FZ-1声音转储
常用扩展名及含义(G开头)
G721 Raw CCITT G.721 $bit ADPCM格式数据
G723 Raw CCITT G.723 3或5bit ADPCM格式数据
GAL Corel多媒体管理器相集
GCD Generic CADD绘画文件(后续版本)
GCP Ground Control Point(地面控制点)文件,用于远景数据形成图像过程,经常用于生成图工程—CHIPS(copenhagen image processing system)使用这些文件
GDB InterBase数据库文件
GDM 铃声、口哨声和声音板模块格式
GED GEDCOM 系谱数据文件,用于记录和交换系谱数据的流行格式;图形环境文档绘画
GEM GEM元文件
GEN Ventura产生的文本文件
GetRight GetRight未完成的下载文件
GFC Patton&Patton FlowCharting 4 flowchart文件
GFI,GFX Genigraphics图形链接表示文件
GHO Norton 克隆磁盘映像
GID Windows 95全局索引文件(包括帮助状态)
GIF CompuServe位图文件
GIM,GIX Genigraphics图形链接介绍文件
GKH Ensoniq EPS家簇磁盘映像文件
GNA Genigraphics图形链接介绍文件
GNT 生成代码,Micro Focus属性格式里的可执行代码
GNX Genigraphics图形链接介绍文件
GRA Microsoft Graph文件
GRD 用于远程视景数据产生地图过程的格式文件,通常应用于形成地图工程—CHIPS(copenhagen image processing system)使用这些文件
GRF Grapher(Golden Software公司)图形文件
GRP 程序管理组
GSM Raw GSM 6.10音频流;Raw“byte aligned(比特对齐的)” GSM 6.10音频流;US Robotics语音调制解调器
GTK Graoumftracker(老)音乐模块(MOD)文件
GT2 Graoumftracker(新)音乐模块(MOD)文件
GWX,GWZ Cenigraphis图形链接介绍文件
GZ UNIX gzip压缩文件
常用扩展名及含义(H开头)
H C程序头文件
HCM IBM HCM配置文件
HCOM 声音工具HCOM格式
HCR IBM HCD/HCM产品配置文件
HDF 高级计算机应用程序本地中心(NCSA) geospatial Hierarchial数据格式文件
HED HighEdit文档
HEL Microsoft Hellbender格式保存的游戏文件
HEX Macintosh BinHex2.0文件
HGL HP图形语言绘图文件
HH 映射文件,包括一些话题ID和在帮助文件系统中话题的映射数字—允许运行中应用程序发送给用户合适的上下文帮助话题
HLP 帮助文件;Date CAD Windows帮助文件
HOG Lucas Arts的Dark Forces WAD文件
HPJ Visual Basic帮助工程
HPP C++程序头文件
HQX Macintosh BinHex 4.0文件
HST 历史文件
HT HyperTerminal(超级终端)
HTM,HTML 超文本文档
HTT Microsoft超文本模板
HTX 扩展HTML模板
HXM Descent2 HAM文件扩展
常用扩展名及含义(I开头)
ICA Citrix文件
ICB Targa位图文件
ICC Kodak打印机格式文件
ICL 图标库文件
ICM 图形颜色匹配配置文件
ICO Windows图标
IDB MSDev中间层文件
IDD MIDI设备定义
IDF MIDI设备定义(Windows 95需要的文件)
IDQ Internet数据查询文件
IDX Microsoft FoxPro相关数据库索引文件;Symantec Q&A相关数据库索引文件;Microsoft Outlook Express文件
IFF 交换格式文件;Amiga ILBM
IGES 初始图形交换说明文件
IGF 插入系统元文件
IIF QuickBooks for Windows交换文件
ILBM 位图图形文件
IMA WinImage磁盘映像文件
IMG GEM映像
IMZ WinImage压缩磁盘映像文件
INC 汇编语言或动态服务器包含文件
INF 信息文件
INI 初始化文件;MWave DSP Synth的“nwsynth.ini” GMS安装;Cravis Ultrasound bank安装
INP Oracle 3.0版或早期版本的表单源代码
INRS INRS远程通信声频
INS InstallShield安装脚本;X-Internet签字文件;Ensoniq EPS字簇设备;Cell/ⅡMAC/PC抽样设备
INT 中间代码,当一个源程序经过语法检查后编译产生一个可执行代码
IOF Findit文档
IQY Microsoft Internet查询文件
ISO 根据ISD 9660有关CD-ROM文件系统标准列出CD-ROM上的文件
ISP X-Internet签字文件
IST 数字跟踪设备文件
ISU InstallShield卸装脚本
IT 脉冲跟踪系统音乐模块(MOD)文件
ITI 脉冲跟踪系统设备
ITS 脉冲跟踪系统抽样,Internet文档位置
IV Open Inventor中使用的文件格式
IVD 超过20/20微观数据维数或变量等级文件
IVP 超过20/20的用户子集配置文件
IVT 超过20/20表或集合数据文件
IVX 超过20/20微数据目录文件
IW Idlewild屏幕保护程序
IWC Install Watch文档
常用扩展名及含义(J开头)
J62 Ricoh照相机格式
JAR Java档案文件(一种用于applet和相关文件的压缩文件)
JAVA Java源文件
JBF Paint Shop Pro图像浏览文件
JFF,JFIF,JIF JPEG文件
JMP SAS的JMPDiscovery表格统计文件
JN1 Epic MegaGames的Jill of the Jungle数据文件
JPE,JPEG,JPG JPEG图形文件
JS javascript源文件
JSP HTML网页,其中包含有对一个Java servlet的参考
JTF JPEG位图文件
常用扩展名及含义(K开头)
K25 Kurzweil 2500抽样文件
KAR 卡拉OK MIDI文件(文本+MIDI)
KDC Kodak光增强器
KEY DataCAD图标工具条文件
KFX KoFak Group 4图像文件
KIZ Kodak数字明信片文件
KKW RoboHELP帮助工程索引设计器中与主题无关的K开头的所有关键字
KMP Korg Trinity KeyMap文件
KQP Konica照相机本地文件
KR1 Kurzweil 2000抽样(多软驱)文件
KRZ Kurzweil 2000抽样文件
KSF Korg Trinity抽样文件
KYE Kye游戏数据
常用扩展名及含义(L开头)
LAB Visual dBASE标签文件
LBM Deluxe Paint位图文件
LBT,LBX Microsoft FoxPro标签文件
LDB Microsoft Access加锁文件
LDL Corel Paradox分发库
LEG Legacy文档
LES Logitech娱乐系统游戏配置文件(与REC文件一样)
LFT 3D Studio(DOS)放样文件
LHA LZH更换文件后缀
LIB 库文件
LIN DataCAD线型文件
LIS 结构化查询报告(SQR)程序产生的输出文件
LLX Laplink交换代理
LNK Windows快捷方式文件
LOG 日志文件
LPD Helix Nut和Bolt文件
LRC Intel可视电话文件
LSL Corel Paradox保存的库文件
LSP AutoLISP、CommonLISP和其他LISP语言文件
LST 列表文件
LU ThoughtWing库单元文件
LVL Parallax Software的 Miner Descent/D2 Level扩展
LWLO Lightwave分层对象文件
LWOB Lightwave对象文件
LWP Lotus WordPro 96/97文件
LWSC Lightwave视景文件
LYR DataCAD层文件
LZH LH ARC压缩档案
LZS Skyroads数据文件
常用扩展名及含义(M开头)
M1V MPEG相关文件(MIME“mpeg”类型)
M3D Corel Motion 3D动画文件
M3U MPEG URL(MIME声音文件)
MAC MacPaint图像文件
MAD Microsoft Access模块文件
MAF Microsoft Access表单文件
MAG 在一些日本文件中发现的图形文件格式
MAGIC 魔力邮件监视器配置文件
MAK Visual Basil或Microsoft Visual C++工程文件
MAM Microsoft Access宏
MAN UNIX手册页输出
MAP 映射文件;Duke Nukem 3D WAD游戏文件
MAQ Microsoft Access查询文件
MAR Microsoft Access报表文件
MAS Lotus Freelance Graphics Smart Master文件
MAT Microsoft Access表;3D Studio MAX材料库
MAUD MAUD抽样格式
MAX Kinetx的3DStudio MAX文件;该格式用于一个3D场景文件;Paperport文件;OrCAD设计文件
MAZ Hover迷路数据;Division的dVS/dVISE使用的文件格式
MB1 Apogee Monster Bash数据文件
MBOX Berkeley Unix邮箱格式
MBX Microsoft Outlook保存email格式;Eudora邮箱
MCC Dailerl0呼叫卡
MCP Metrowerks CodeWarrior工程文件
MCR DataCAD键盘宏文件
MCW Microsoft Word的Macintosh文档
MDA Microsoft Access内抽入器;Microsoft Access 2.0版及其后续版本的工作组事件
MDB Microsoft Access数据库
MDE Microsoft Access MDE文件
MDL 数字跟踪器音乐模块(MOD)文件;Quake模 块文件
MDN Microsoft Access空数据库模板
MDW Microsoft Access工作组文件
MDZ Microsoft Access向导模板文件
MED 音乐编辑器,OctaMED音乐模块(MOD)文件
MER 电子表格/数据库数据交换格式;FileMaker、Excel及其他软件能识别
MET 表示管理器元文件
MFG Pro/ENGINEER制造文件
MGF 在材料与几何学里的文件格式
MHTM,MHTML MHTML文档(MIME)
MI 杂项
MIC Microsoft Image Composer文件
MID MIDI音乐
MIF Adobe FramMaker交换格式
MIFF 与机器无关格式文件
MIM,MIME,MME Internet邮件扩展格式的多用途文件,经常作为发送e-mail时在AOL里附件而创建的文件;在一个多区MIM文件里的文件能用WinZip或其他类似程序打开
MLI 3D Studio的材料库格式文件
MMF Meal Master格式;一个处方类格式;Microsoft邮件文件
MMG 超过20/20表或集会数据文件
MMM Microsoft多媒体电影
MMP Mindmapor Mind Manager文件
MN2 Descent2任务文件
MND,MNI Mandelbort for Windows
MNG 多映像网络图形
MNT,MNX Microsoft FoxPro菜单文件
MNU Visual dBASE菜单文件;Intertel Systems Interact菜单文件
MOD Fast Tracker、Star Trekker、Noise Tracker(等等)音乐模块文件;Microsoft多计划电子表格;Amiga/PC磁道文件
MOV QuickTime for Windows电影
MP2 第二层MPEG音频文件
MP3 第三层MPEG音频文件
MPA MPEG相关文件,MIME“mpeg类型”
MPE,MPEG,MPG MPEG动画文件
MPP Microsoft工程文件;CAD绘图文件格式
MPR Microsoft FoxPro菜单(已编译)
MRI MRI扫描文件
MSA 魔术阴影档案
MSDL Manchester的场景描述语言
MSG Microsoft邮件消息
MSI Windows 安装器包
MSN Microsoft网络文档;Descent Mission文件
MSP Microsoft Paint(画图)位图文件;Windows Installer路径文件
MST Windows 安装器传输文件
MTM Multi 跟踪器音乐模块(MOD)文件
MUL Ultima在线
MUS 音乐
MUS10 Mus10声音
MVB Microsoft多媒体查看器文件
MWP Lotus WordPro 97 Smart Master文件
常用扩展名及含义(N开头)
NAP NAP元文件
NCB Microsoft Developer Studio文件
NCD Norton改变目录
NCF NetWare命令文件;Lotus Notes内部剪切板
NDO 3D 低多边形建模器,Nendo
netCDF 网络公用数据表单
NFF 中性文件格式
NFT NetObject Fusion模板文件
NIL Norton光标库文件(EasyIcons-兼容)
NIST NIST Sphere声音
NLB Oracle 7数据
NLM NetWare可装载模块
NLS 用于本地化的国家语言支持文件(例如,Uniscape)
NLU Norton Live Update e-mail 触发器文件
NOD NetObject Fusion文件
NSF Lotus Notes数据库
NSO NetObject Fusion文档文件 t多媒体查看器文件
MWP Lotus WordPro 97 Smart Master文件
NST Noise Tracker音乐模块(MOD)文件
NS2 Lotus Notes数据库(第二版)
NTF Lotus Notes数据库模板
NTX CA-Clipper索引文件
NWC Noteworthy Composer歌曲文件
NWS Microsoft Outlook Express新闻消息(MIME RFC822)
常用扩展名及含义(O开头)
O01 台风声音文件
OBD Microsoft Office活页夹
OBJ 对象文件
OBZ Microsoft Office活页夹向导
OCX Microsoft对象链接与嵌入定制控件
ODS Microsoft Outlook Express邮箱文件
OFF 3D 网状物对象文件格式
OKT Oktalyzer音乐模块(MOD)文件
OLB OLE对象库
OLE OLE对象
OOGL 面向对象图形库
OPL 组织者编程语言源文件——Psion/Symbian
OPO OPL输出可执行文件
OPT Microsoft Developer Studio文件
OPX OPL扩展DLL(动态链接库)
ORA Oracle 7 配置文件
ORC Oracle 7脚本文件
ORG Lotus Organ
9. Java最近几年为什么这么火
Java语言之所以能够成为IT行业内最为流行的“全场景”编程语言之一,主要基于以下几个方面的原因:
1、它的代码易于理解和故障排除
多年来,Java取得飞速发展的部分原因是因为它是面向对象的。简而言之,一种面向对象的编码语言将执行过程分解为易于处理的小块,从而简化了软件设计。使用Java进行编程时,很难遇到与C和C ++相关的复杂编码问题。最重要的是,诸如Java之类的面向对象语言为程序员提供了更大的模块化和易于理解的实用方法。
2、JRE使Java独立
JRE(Java运行时环境)是它可以在各个平台上一致运行的原因。程序员所需要做的就是将JRE安装到计算机上,尽管开发了Java程序,但所有Java程序都可以使用。
除了可以在Mac,Linux甚至Windows的计算机上平稳运行之外,JRE还与手机兼容。那就是程序员为了发展自己的职业而从编码语言中获得的独立性和灵活性,特别是如果他们是新手。
3、重用通用代码很容易
每个人都讨厌角色的重复和重叠,Java也是如此。这就是为什么这种编码语言开发出一种称为Java对象的功能的原因,该功能允许程序员在适用的情况下重用通用代码,而不必一次又一次地重写相同的代码。类中两个对象之间的公共属性是共享的,因此开发人员可以完全专注于开发不同的,不常见的属性。这种形式的代码继承使编码简单,快速且廉价。
4、Java API使其用途广泛
Java API为程序员提供了数千个类和大约50个可使用的关键字。它还允许程序员使用运行数以万计的编码方法。这使得它对于程序员可能拥有的许多编码思想都具有通用性和适应性。这还不是全部;对于新手来说,Java API并不是太复杂,入门的所有必要条件就是学习其中的一部分。一旦能够舒适地使用Java的实用程序功能,就可以学习工作中的其他所有知识。
5、Java允许您跨服务器运行程序
为使用计算机网络的大型组织进行编码时,最大的挑战是同步所有计算机,以使程序在每个计算机上无缝运行。但是,使用Java的PATH和CLASSPATH,您不必担心程序在多个服务器上的分布。
6、编程适应性强,稳定
因为您可以在计算机和移动设备上运行Java,所以可以说该语言的方言具有通用性。而且,它可以在Raspberry Pi等设备上完美运行。另一方面,您可以大规模和小型地运行Java,这意味着其代码既强大又稳定。正如我们提到的,Java没有任何限制。您甚至可以使用这种语言开发翻译软件。为了获得最佳结果,与专业翻译服务提供商紧密合作总是明智的。
7、强大的源代码编辑器
Java的源代码编辑器是集成开发环境,它不仅使程序员能够更快,更轻松地编写代码,而且还具有自动的内置调试器功能。
结论
如果您需要Java编程方面的帮助,可以选择为所有类型的组织提供外包服务的公司。这样的公司使程序和应用程序开发负担得起。以上就是整理的Java如此受欢迎的几个原因。希望看完本文大家对Java有更清晰的了解。
10. cocos2dx 加载cocostudio ui界面时会卡住。
1CocoStudio场景编辑器前面的文章《使用CocoStudio创建Cocos2d-x序列帧和骨骼动画》《如何使用CocoStudioUI编辑器实现《乱斗堂》设置界面》,其中介绍了如何使用动画编辑器创建动画与使用UI编辑器创建游戏配置界面,而本文将集两者之大成,使用CocoStudio场景编辑器来创建游戏场景,其中包含游戏UI与动画,来定制一个游戏主界面。2使用CocoStudio完成《魔卡幻想》场景编辑对于环境的搭建使用,请参考之前的文章,或者实时关注官方最新版本的安装使用方法。2.1UI编辑器制作游戏主界面创建项目(项目名称:MysticalCard),并导入项目UI资源,添加一图片框设定背景图片。注意在工具拦设置“画布”的大小(如果需要),这将决定着你的设计分辨率,在运行时还需要注意屏幕的适配问题,如放大缩小,位置偏移等,视具体情况而定。为界面添加UI元素,图片框等,请根据自己的需要定制实践过程中的注意事项添加控件时注意必要的属性设置控件的命名规范,这有助于我们今后在后台编写代码获取界面元素可交互的控件的“可交互属性”开启2.2建立关键帧动画除了主界面一些必要的UI控件,我们还需要一个“对话框指示”的动画效果。这是一个帧动画。准备工作。如下图所示:打开CocoStudio,启动动画编辑器创建一个新的项目,后导入资源(在“资源窗口”中,点击“文件”或者“文件夹”标示,添加需要的素材资源)在“资源窗口中”点击关键帧动画的守帧图片,拖动至“渲染窗口”将第一关键帧拖动至“渲染窗口”中心。可以使用工具栏,快速定位至窗口中心,使图片显示在正中间,可以让动画更好的定位。添加其它帧图片,注意,我们需要选中剩余图片,然后“拖动”到“对象结构”视图中的“第一关键帧”所在的对象,如下图所示。关键帧与骨骼动画操作区别:在使用骨骼动画的时候,我们将骨骼中的各部分元素,直接拖动添加到“渲染窗口”,以摆放各骨骼的位置关系,而在“对象结构”视图中则表现为,一个列表,标示着每一块骨骼对象,不同帧所改变的是各个骨骼对象的位置,以达到骨骼动画效果。而在关键帧动画中,它的对象结构只有一个,而在每一帧修改的不是其位置,而是其显示内容。这是两者之间的区别,那操作方式也有所不同。而对于它们所导出的资源则是相同,用法也是同样。剩余帧添加之后,我们看见在“关键帧”视图中,已经有了多帧动画,可以播放动画,查看效果,并可以通过修改“速率”来控制动画的播放速度。导出动画资源,导出的资源文件可以被我们在Cocos2d-x中以代码的方式直接加载,然后播放其动画,也可以作为场景编辑器中的一个元素,被添加在场景编辑器里,后面的内容就是使用场景编辑器来加载一个动画的方式。2.3场景编辑器的资源“整合”使用CocoStudio可以很好的帮助游戏开发过程中分工合作。动画编辑器和UI编辑器可以由多个人进行编辑,最后再由一个人统合资源,这也就是场景编辑器的优点了,它除了能支持CocoStudio本身所自带的动画编辑器,UI编辑器,它还能支持,Tmx地图资源,粒子编辑器的粒子效果资源,声音资源等~并且不断扩展中。以下将给出如何在场景编辑器整合我们之前所创建的动画与UI界面的资源,来实现我们一个场景的运行效果。它的步骤如下:启动场景编辑器,新建一个场景项目。并设置“画布”大小。画布大小要适量。我们拖动一个UI控件到画布之上,它作为我们之前导出的UI资源的承载。我们将之前的UI编辑器所导出的资源,导入到当前场景项目中来,导入方式与UI编辑器导入资源方式同样,如下图:为UI控件的“文件”属性赋值:我们在资源视图中找到UI编辑器所导出的UI资源,其目录下包含json文件资源(如这里的“MysticalCard_1.json”),将其拖动到UI控件的文件属性中去,如下图所示:前面的步骤已经将UI资源导入场景之内,现在需要添加之前所创建的动画资源。我们以相同的方式导入动画编辑器所导出的动画资源文件。拖动一个骨骼控件至场景界面,如下图所示。为骨骼控件的“文件”属性赋值,其值为动画资源中的ExportJson(或者json文件,这取决于动画资源的导出方式)文件。运行效果:当我们建立好场景之后,可以通过工具栏运行按钮,点击查看效果,这意味着你不用将所有的资源文件,手动以代码的方式添加到Cocos2d-x中,便能看到效果。在运行效果中,所有的控件都是可操作的,如下图,但这里只有点击效果,如果需要实现其逻辑,那么现在需要将其加载到Cocos2d-x项目中,编写后台代码实现。3在Cocos2d-x中加载场景资源并运行之3.1加载场景内容前面那么多步骤,使用CocoStudio来创建了UI,动画,还有一个场景,而要将其运行在实际的项目中,就非常的简单与方便了,只需几行代码,就能够将其加载到项目中去,当然在这之前我们需要将场景编辑器的资源(场景项目目录中“Resources”目录,其中将包含一个json文件)复制到项目资源目录中去://加载场景资源CCNode*pNode=CCJsonReader::sharedJsonReader()->createNodeWithJsonFile("McScene.json");this->addChild(pNode);通过CCJsonReader来读取解析json,从而获得场景中的节点内容,直接添加到当前的场景就能运行。3.2在场景中播放动画默认加载的场景资源动画组件是没有播放的,需要手动获取动画组件对象,然后调用其播放方法,当然这个步骤也是非常简单的://pNode为之前所获取的场景资源根节点,通过此节点获取到动画对象,获取方式根据在场景编辑其中设置的层次关系而定CCComRender*pLoadRender=(CCComRender*)(pNode->getChildByTag(1)->getChildByTag(1)->getComponent("CCArmature"));CCArmature*armLoad=(CCArmature*)(pLoadRender->getRender());//播放动画armLoad->getAnimation()->playByIndex(0);3.3对场景的一些编码说明使用CocoStudio就是为了帮助我们快速的建立UI原型,然后通过编码可以获取到里面的任意一个元素对象,并修改其属性值,调用其方法,正如上面所示播放一个动画的方法同样。其步骤如下:通过CCJsonReader类读取json文件,将会自动解析构建对象,返回一个节点CCNode任何元素都能通过这个CCNode节点,获取到,它其实就是一个树,所不同的是层级关系(树节点的位置)找到需要对象所在的“树枝”,后通过getComponent方法获取所在的CCComRender对象通过CCComRender的getRender方法获取最终对象得到我们所需要的具体对象之后,我们就能够对齐进行草,设置属性,调用方法等,诸如此类本文中所有的源码示例和CocoStudio项目工程都可以在这里查看。