OpenTK
是一个可以支持C#
程序跨平台进行OpenGL
调用的模块,这里我们简单介绍一下在Visual Studio(VS)
中关于这个模块的调用。
- 打开
VS
并点击Create a new project
选项 - 选择
C#
和window
开发平台选择Console.App(.NET.Core)
后并点击Next
- 输入项目名称,并选择项目创建的位置后点击
Create
完成对项目的创建 - 打开项目文件后添加点击
Project
并选择Manage NuGet Packages
- 选择
Browse
,输入OpenTK
,选择第一个然后点击右侧的Install
完成对当前项目添加OpenTK
包的操作
比如,这里我们创建一个名为OpenTK_Debug
的工程,最终创建好后可以得到如下图所示。
我们可以
看到右侧在Packages
栏目中已经引入了OpenTK
包。至此,我们完成了OpenTK
模块的添加,接下来我们就可以通过OpenTK
来调用OpenGL
完成我们的3D
开发了。对于一般的工程,如果我们只创建一个.cs
文件,完成上述的操作就已经完成了OpenTK
的配置。然而对于一个真实的OpenTK
工程来说,我们通常需要用到四个大类:1. 主程序中的类,2. 主程序中调用的GUI
窗口界面的类,3. 着色器类, 以及4. 两个着色器(端点着色器)和(片段着色器)。这里我们以一个最简单的例子—空间中单个三维点的绘制(超链接点击跳转)来说明配置过程。
对于上文中的主程序中的类,我们可以用本文之前提到的操作步骤进行完成,对于主程序中调用的GUI
窗口界面的类,我们需要在刚刚创建的OpenTK_Debug
程序下添加一个新的class
类。创建方法如下:
在OpenTK_Debug
上右击鼠标,选择添加新项目。然后出现如下图所示界面。
选择class
项,输入文件名称,最后点击Add
按键即可。最终我们可以得到:(如下图所示)
此时在Solution Explorer
中我们添加了主程序中调用的GUI
窗口界面的类。对于着色器类,我们需要首先在当前解决方案下新建一个project
。
如上图所示,在Solution"OpenTK_Debug"
上右键,选择New Project
。这里我们将其命名为Common
。然后我们可以看到在Solution Explorer
中出现了创建好的项目。
注意这里创建的项目必须是Microsoft.NETCore.App
类型文件。
然后我们如上图所示在Project
选项卡中选择Properties
选项。
在Output type
中从Console Application
类型变更为Class Library
类型。并按Ctrl+s
组合键进行保存。最后再按照之前介绍过的步骤为Common
项目也添加OpenTK
包。
这里必须要注意两点:
- 如果不修改
Common
项目的输出类型,那么运行时程序会报错,提示Common
文件中缺少Main
函数。 - 但是开始创建
Common
项目的时候必须选择Console.App(.NET Core)
类型,否则无法为Common
项目添加OpenTK
包。比如直接选择Class Library(.NET Standard)
类型(可以自行尝试)。
最后我们需要写两个着色器,然后在OpenTK_Debug
上右键选择Open Folder in File Explorer
,再进入bin目录,再进入Debug,在进入netcoreapp3.1,将我们写好的两个着色器存放在这个目录下即可,如我们的目录为:
接下来我们需要进行最后一步操作,为我们的OpenTK_Debug
项目添加Common
项目。
如上图所示,右键Dependencies
选择Add Project Reference
。
然后勾选中Common
项目,点击OK
按键即可。
至此,我们完成了OpenTK
的配置,之后不再重复叙述。
本