Sony ATF框架学习笔记(一)

Sony ATF框架是一个开发游戏Editor的框架,他由c#编写,由于官方文档惨不忍睹,尤其是入门部分,基本没啥好阅读的,就一句话,自己看例子去。


所以我们来自己补一篇 sony atf 入门

第一步 拉框架源码

https://github.com/SonyWWS/ATF


第二步 创建一个全新的c# winform项目

此处需注意,不兼容dotnet core,只兼容dotnet framework 4.x

image

这里一定要注意,一定要用带(.net framework)的这个

image

因为atf用dotnet 4.0 编译,所以这里我们只要是大于4.0的,都行

第三步 搬运atf项目源码

当然可以只搬运编译好的atf项目dll,有源码在出错的时候可以多一点线索,有备无患

image

从atf仓库 把这三个目录 和 .component文件copy过来,这几个目录和文件的相对关系不能变。

image

然后从framwork里面找到对应的项目扔进解决方案里面,并引用之。

需要额外引用一个System.ComponentModel.Composition 系统库,这也是为啥用不了dotnetcore的原因,这个库dotnetcore不兼容。

第三步 HelloWorld代码

这是本来面目

image

image

这是我们的第一份helloworld,这个代码可以从atf的例子中找到

image

打开他是这样的

atf主要提供了文档模型和一堆界面组件,我们还需要验证一个主要功能,我要加一个特殊的窗口怎么办。

image

创建一个自定义组件,然后打开刚才helloworld里的注释,这个组件就生效了。

这里主要依靠在构造函数里的 registerControl 调用,放了一个自定义winform 控件进来。

然后在Activate函数里,就可以对自定义winform控件进行处理。

熟悉win32 的同学应该敏锐的发现了,只要一个有句柄的控件,在windows上面我们就可以用这个hwnd 去和渲染api 链接,任何图形api 都可以用来画东西了。

这可以用来搞scene视图 game视图了。

他跑起来是这样的

image


第一天结束,跑起helloworld

posted @ 2022-07-25 21:00  疯光无线  阅读(23)  评论(0编辑  收藏  举报