Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

学习OpenGL使用C# + OpenTK

NotificationsYou must be signed in to change notification settings

huangkumao/LearnOpenGL-with-OpenTK

Repository files navigation

​学习OpenGL有助于理解渲染流程,了解渲染幕后的工作和Shader编程,以及一些数学方法等都有非常大的帮助. 特别是对Unity3D的程序员来说更为重要,因为Unity封装了很多细节, 学习一遍OpenGL会使你的思维更加清晰.

​ 学习OpenGL我推荐[LearnOpenGL]:https://learnopengl.com/​ 中文地址[LearnOpenGL CN]:https://learnopengl-cn.github.io/

​ 教程里的代码都是用C/C++来编写的, 对于不太了解C++的人来说你可能会被与我们目标无关的内容(配置环境/第三方库)浪费大量精力,很难尽快入手学习. 所以我使用[OpenTK]:https://github.com/opentk/opentk 来重新编写里教程中的示例. OpenTK:The Open Toolkit library is a fast, low-level C# binding for OpenGL, OpenGL ES and OpenAL. It runs on all major platforms and powers hundreds of apps, games and scientific research.

环境配置

Visual Studio 2017

OpenTK 3.0.1 - 使用NuGet安装

GlmNet 0.7.0 - GLM的.Net实现 使用NuGet安装

System.Drawing - 提供对图片的操作 通过引用添加到项目

克隆工程后需要先还原NuGet包, 右键工程'管理NuGet程序包'点击还原即可.

一些函数接口对应关系

OpenGL提供的接口/函数/枚举/常量等 在OpenTK里都有对应 对应关系规律也比较明显, 如下图

OpenGLOpentk
glCreateShaderGL.CreateShader
GL_VERTEX_SHADERShaderType.VertexShader
glGenVertexArraysGL.GenVertexArray
GL_ARRAY_BUFFERBufferTarget.ArrayBuffer
glDrawElementsGL.DrawElements
glViewportGL.Viewport
......

其他的对模型/贴图/数学操作等 .Net/OpenTK要么已经封装, 要么你很容易能找到第三方库来处理.

当前我已经完成了教程的第一部分Begining的内容, 代码中也添加了详细的注释.后续的内容会陆续添加.

About

学习OpenGL使用C# + OpenTK

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

[8]ページ先頭

©2009-2025 Movatter.jp