一个使用Unity制作的透明app, 只把特定的物体显示到桌面上, 其他部分不会遮挡你的桌面并且仍旧是可交互的。
通常我们使用Unity制作的项目都是全屏并且完全遮挡住桌面的,我们不能穿透它看到桌面的其它东西,也就不能交互了。但事实上我们是可以用Unity实现这个功能的, 只需要借助几个简单的WindowsAPI。 了解了这些,我们就可以做一些好玩的东西了。
比如这样,在你桌面上添加一个萌萌的妹子陪你一起写代码,这样你就不会孤单了。你可以和她进行一些互动,而其他地方是透明的不会影响你的其它工作。
你也可以使用3D素材做出你想要的东西。
为了做到这个效果我们需要使用命名空间 System.Runtime.InteropServices
下的[DllImport("xxx.dll")]
来导入一些Dll并使用其中的方法,在项目下WindowsAPI脚本中查看更多方法的解析。
本项目主要使用user32.dll
, 查看 http://www.pinvoke.net/ 了解更多Dll文件的使用方法,也许你可以做出更多好玩的功能。
如果你想在自己的项目中使用该功能,打包的时候要注意如下几点:
- 把Camera的背景颜色改成(0,0,0,0)。
- 参照本项目Resolution and Presentation的配置修改你自己的项目。
目前有的功能:
- 右键点住妹子可以拖动她的位置。
- 左键点击她可以有一些交互的反应。
- 妹子会一直盯着你的鼠标位置。
想了解更多就自己下载了打个包试试吧。
我会逐渐添加更多的功能和素材进去,如果你觉得有用得话就给点个Star吧 😄。