Application with OpenGL via OpenTK Library
This article describes the sample located in the <UnigineSDK>/source/csharp/samples/App/GLTKAppForm/ folder.
The sample demonstrates how to embed Unigine into a Windows Forms application:
- Create a Windows Forms application and embed Unigine into it.
- Initialize OpenGL by using OpenTK library.
The sample can be run on Windows only.
Running Sample
To run the sample, you should do the following:
-
Prepare the development environment:
- Install Microsoft Visual Studio for C# (Visual C# Express). It can be downloaded for free.
Microsoft Visual Studio Community 2013 supports multiple languages and C# by default. Read more about the Visual Studio Community 2013 IDE.
- Install Microsoft Windows SDK 7.x (can be downloaded for free).
- Install DirectX redistributive June 2010 (can be downloaded for free).
- Install Python 2.7 (can be downloaded for free).
- Install SCons 2.0+ (can be downloaded for free).
Microsoft .NET Framework 4 or higher is required.OpenTK library will be installed automatically when you install Unigine SDK. - Install Microsoft Visual Studio for C# (Visual C# Express). It can be downloaded for free.
- Open the Visual C# main_x86.csproj (or main_x64.csproj) project file located in the <UnigineSDK>/source/csharp/samples/App/GLTKAppForm/ folder.
-
Click the button on the toolbar (or DEBUG -> Start Debugging) to start the project.
Windows Form Application will open.
Description of C# classes
This sample contains 4 classes:
- AppForm - inherits the Unigine.App class. In this class the doUpdate(), doRender() and doSwap() functions are overridden and call the update(), render() and swap() functions respectively.
- AppFormControl - inherits the System.Windows.Forms.Form class. This class implements all the necessary events, which will be performed when user interacts with the application.
- GLTKAppForm - inherits the AppForm class and initializes the graphics OpenGL API in the Windows Forms Application via the OpenTK library.
- UnigineApp - defines the entry point of the program. C# Wrapper and Engine are initialized here.
AppForm, AppFormControl, GLTKAppForm are defined in the Unigine namespace.
See Also
- Article on App Class to learn how to create an application based on the Unigine.App class.
Last update: 2017-07-03
Help improve this article
Was this article helpful?
(or select a word/phrase and press Ctrl+Enter)