GithubHelp home page GithubHelp logo

mono / opentk Goto Github PK

View Code? Open in Web Editor NEW
114.0 33.0 67.0 16.25 MB

OpenTK is a set of bindings to OpenGL, OpenCL and OpenAL. This is not the main repository, just a temporary import to allow Mono developers to make changes to this module. Please do not contribute changes here, contribute them to the upstream maintainers at http://www.opentk.com

Home Page: http://www.opentk.com

C# 98.92% XSLT 0.01% Tcl 0.06% C 0.60% NSIS 0.03% GLSL 0.02% Python 0.25% Ruby 0.12%

opentk's People

Contributors

cartblanche avatar dalexsoto avatar dellis1972 avatar jonpryor avatar jstedfast avatar mdh1418 avatar migueldeicaza avatar radekdoulik avatar rolfbjarne avatar shana avatar spouliot avatar terrajobst avatar toshok avatar vincentdondain avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

opentk's Issues

Missing iOS support for Xamarin.Legacy.OpenTK

xamarin.ios10 and net6-ios seem to be missing from Xamarin.Legacy.OpenTK package. Looking at OpenTK.Android.csproj, there seem to have been an attempt.

This would help transitioning older xamarin.ios projects relying on OpenTK to net6.

OpenGL ES 3.1 support

OpenGL ES 3.1 was released a few days ago, introducing compute shaders and aligning OpenGL ES with desktop OpenGL 4.4. This is a significant update.

I am adding ES 3.1 support to OpenTK in preparation of Android 4.5 and would like some input on the optimal way to handle this:

  • Introduce a new ES31 namespace alongside ES30, in alignment with ES11 and ES10?
  • Fold ES31 into the ES30 namespace?

The first options adds ~420KB to OpenTK.dll, while the second adds only ~40KB. The linker should be able to eliminate the bloat in either case, so I am leaning towards the separate ES31 namespace.

Does anyone have any better ideas?

Review: consolidate upstream branch

OpenTK has now moved from sourceforge/SVN to github, under: https://github.com/opentk/opentk/

The xamarin branch attempts to merge the community-maintained version with the rodo-consolidate-opentk branch of mono/opentk. This is merge-able with mono/opentk master and ready for review.

New features:

  • strongly-typed enums for OpenGL 4.4, ES 2.0 and ES 3.0
  • support for ES on desktop systems (incl. ANGLE project)
  • expanded math library
  • faster/saner startup sequence
  • dozens of bugfixes for Windows, Linux and Mac OS
  • optional SDL backend

Three main issues remain:

  1. after merging, the log contains three parallel histories of commits up to SVN r2600 or so, coming from the three (identical) git-svn trees that have been merged into the current head. Is there any git expert who knows whether this is fixable?
  2. as far as I can tell, rodo-consolidate-opentk does not contain any build support for OpenTK/Platform/iPhoneOS. It would be great if you could share some details about the build process (which files you are including, what defines, any pre-/post-processing).
  3. I am still reviewing and fixing API changes against opentk-1.0 in preparation of a 1.1 beta release. There is something strange going on with corcompare marking methods with identical parameters as changed, so this is not straightforward.

Feedback appreciated!

iOS not working

It seems the whole folder for Platform/iPhoneOS is left out of the solution. How do you build for iPhone?

Context check in Android view

In AndroidGameView line 208, there's a null check for the context, but the next statement is a context assert that doesn't check the same context. Does this look like an issue? I fell like it is, but maybe I just don't understand the code correctly!

Packaging

Hi,

Can mono's team provide official nuget(https://www.nuget.org/) package that can then easily be consumed by customer, without cloning/building on our side?

Regards,
Rick

Windows form control glitching when inside a scrollable control

I have a GLControl inside a Panel that is scrollable (AutoScroll = true). When I scroll, the back GLControl gets all messy and glitchy. I thought maybe it was not refreshing, so I called its Invalidate method from the parent Panel when the latter is resized. It's a bit better, but it's now flickering on every scroll increment.

To reproduce this, you can simply put a GLControl that is larger than the form, setting the form's AutoScroll property to true and clearing the OpenGL color bit buffer with a color of your choice in the OnPaint event.

OpenTK website URL is wrong

The official website migrated from opentk.com to opentk.github.io a while ago, so the link in the project description should be updated accordingly.

Severe namespace conflict with OpenTK in Xamarin.Android and Xamarin.iOS

OpenTK has improved significantly since this fork was made many, many years ago.

If this fork was no longer automatically included on those platforms, we would no longer have severe namespace conflicts, allowing users to make use of the newer versions of OpenTK which we provide.

See:
https://bugzilla.xamarin.com/show_bug.cgi?id=18575
https://bugzilla.xamarin.com/show_bug.cgi?id=52168
https://bugzilla.xamarin.com/show_bug.cgi?id=52169
https://bugzilla.xamarin.com/show_bug.cgi?id=56017

OpenTK Parent issue:
opentk/opentk#810

We would really like to work together with you guys in allowing Xamarin iOS and Xamarin Android users to use the much improved version of the library.

A bunch of mentions from the above issues:
@Nihlus @dalexsoto @tzachshabtay @cobey @jonpryor @topgenorth @mkrueger @DhirenSarup @radekdoulik

Merging with opentk/opentk

The following branch merges https://github.com/mono/opentk and https://github.com/opentk/opentk into a common codebase:

opentk/opentk#142

I will issue a PR to mono/opentk discussion over the next few days.

In the meantime, it would be awesome if you could avoid adding any further incompatible modifications to the math API. If you need to add nxm matrix math before this PR, feel free to merge any of the 2x2, 2x3, 2x4, 3x2, 3x3, 3x4, 4x2, 4x3 and 4x4 matrix implementations from opentk/opentk. They have been there since Jan2013 and they are part of the public desktop API.

Cheers.

Edit: fixed link.

Mouse position aligned to screen

I was updating MonoGame DesktopGL to the newest Development snapshot when experiencing the following:
My Mouse.GetState() call returned the mouse's position relative to the Top-Left corner of the screen, not the GameWindow as before and expected.
Tracking this further I ended up with OpenTK.Input.Mouse.GetCursorState() returning this misaligned position which is simply copied to the MonoGame-struct's variables. Therefore I'm assuming this is a bug or whatever within this certain function. I was able to reproduce this exact behavior on two completely different Windows 10 x64 machines, no idea whether it appears on other systems, too.
Let me know if I can help or if it's my problem,
regards

Potential stack overflow?

From discussion at opentk/opentk#535 I noticed this:

        public static void DrawElements(BeginMode mode, int count, DrawElementsType type, int offset)
        {
            DrawElements(mode, count, type, offset);
        }

which would seem to cause a stack overflow

The other two classes with this DrawElements overload (here and here) both used new IntPtr(offset) instead.

GetHashCode?

is the get hash code commutative for vector2/3/4 ?
would it be better (x) ^ (y <<2) ^ (z <<3) instead?

AL.LoadAll() needs a current AudioContext.

Good evening, all.

I'm getting the titular error upon calling new EffectsExtension();, which I'm doing right after creating a context and setting it as the current context. Searching around the internet for the error doesn't come up with any solutions, or even a specific cause. Removing the line that calls EffectsExtension's constructor allows the code to run as normal, including creation and playing of audio sources.

I really need effects to work in order for my project to be worthwhile - it's a game engine I'm developing so I can use it instead of Unity for my game and have a little more freedom over the code, especially when it comes to parallelisation, memory consumption, modding support, and licensing fees. But without effects like reverberation or low-pass filtres.. well, that just won't do.

So.. what can I do? I'm running the application through Mono (I am on Linux, specifically Pop!_OS 21.x), ALGetString.Version returns 1.1 ALSOFT 1.19.1, ALGetString.Vendor returns OpenAL Community, and ALGetString.Renderer returns OpenAL Soft.

As a side note, I notice a lot of open Issues with no replies, some very old.. does anyone read these?

OpenTK with only Windows Support. No Math, No Audio. Only Windows + GLControl

Hello i need for my project OpenGL + C#. OpenTK is great but it is too complecated. Is there a chance to get a OpenTK with no strong name dependencies, no Crosspaltform support audio and math.

I need only OpenGL + WinForms Control.
I need to change the name of the lnamespace and add my own math, audio and so on. How can i do that?
Or may be there is version only OpenGL with all stuff + GLControl only for windows.

NullReferenceException at OpenTK.Platform.Windows.WinRawMouse.RefreshDevices()

System.NullReferenceException: Object reference not set to an instance of an object. ---> System.Exception:
--- End of inner exception stack trace ---
at OpenTK.Platform.Windows.WinRawMouse.RefreshDevices()
at OpenTK.Platform.Windows.WinRawMouse..ctor(IntPtr window)
at OpenTK.Platform.Windows.WinRawInput.CreateDrivers()
at OpenTK.Platform.Windows.WinInputBase.ProcessEvents()
at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart()

DllNotFoundException on .Net 6

Hi, I tried to migrate project to .Net 6, I replaced Assembly reference to Xamarin.Legacy.OpenTK package, but now app crashes at runtime with DllNotFoundException:

android.runtime.JavaProxyThrowable: System.DllNotFoundException: libGLESv2.dll
    at OpenTK.Graphics.ES20.GL.GetInteger(GetPName pname, Int32* params) in OpenTK-1.0.dll

Looks like package does not contain all necessary assemblies.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.