Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Fr Jul 18, 2025 15:51

Foren-Übersicht » Programmierung » Allgemein
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 14 Beiträge ] 
Autor Nachricht
BeitragVerfasst: Mi Apr 06, 2005 17:09 
Offline
DGL Member

Registriert: Mi Dez 15, 2004 20:36
Beiträge: 454
Wohnort: Wien, Österreich
Ich habe jetzt
Zitat:
/** C# Header and Wrapper by Lars Middendorf, lmid@gmx.de */

Ich benutze SharpDevelop. Leider habe ich keine Ahnung wie ich weiter vorgehen müsste. Wie bringe ich meine erste .net Anwendung mit OpenGL zum Laufen?

Code:
  1.  
  2. using System;
  3. using System.Drawing;
  4. using System.Windows.Forms;
  5. using OpenGL;
  6.  


Zitat:
MainForm.cs(12,7): error CS0246: The type or namespace name 'OpenGl' could not be found (are you missing a using directive or an assembly reference?)

Abgeschlossen -- 1 Fehler, 0 Warnungen


Am besten wäre es wenn ihr mit mir so machen würden "talk to me like i am 2 years old.".

_________________
"Meine Mutter sagt : 'Dumm ist der, der Dummes tut'." - Forrest Gump


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Apr 06, 2005 17:18 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Dez 28, 2002 11:13
Beiträge: 2244
Ob es mit Sharp Develop funktioniert weiß ich nicht. C# 2.0 wird auf jeden Fall benötigt.
Eigentlich muß man die Datei nur zu dem Projekt hinzufügen. Warum in der Fehlermeldung OpenGl steht weiß ich nicht, denn es gilt ja Groß und Kleinschreibung und da steht ja auch korrekter Weise using OpenGL.
Ansonsten mußt du eigentlich nur irgendein Control oder die Form als Container nehmen und dann einen Context erstellen. SwapBuffers wird auch über die Context Klasse gemacht, aber ansonsten bleibt alles beim alten. Es gibt dann bei den verschiedenen OpenGL Befehlen noch eine ganze Reihe von sinnvollen Überladungen.

Das müßte eigentlich gehen:

Code:
  1. Context context = new Context(this, 32, 24, 8);
  2. gl.ClearColor(1,1,1,1);
  3. gl.Clear(gl.COLOR_BUFFER_BIT);
  4. context.SwapBuffers();


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Apr 07, 2005 13:06 
Offline
DGL Member

Registriert: Mi Dez 15, 2004 20:36
Beiträge: 454
Wohnort: Wien, Österreich
Leider wird nur .net 1.1 von SharpDevelop unterstüzt :cry: , und soviel ich weiss ,"Marshal.GetDelegateForFunctionPointer" ist erst ab 2.0 .net dabei.

_________________
"Meine Mutter sagt : 'Dumm ist der, der Dummes tut'." - Forrest Gump


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Apr 07, 2005 14:05 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Dez 28, 2002 11:13
Beiträge: 2244
Ja das ist der Grund warum es nur damit geht. Aber es gibt die Beta Version von Visual C# Express kostenlos zum Download bei Microsoft. Obwohl es eine Beta Version ist, läuft sie sehr stabil und ich habe sie schon einige Monate im Einsatz, ohne das mir schwerwiegende Fehler aufgefallen sind.
Falls du unbedingt fürs alte Framework programmieren willst, gibt es noch csgl und TAO, die aber beide recht umständlich zu handhaben sind und auch noch zusätzliche C++ DLL's erfordern.
Der (nächste) DGL Header ist wie Delphi2005 auch nur für .Net 1.1 , aber er braucht auch keine Extra DLL's weil die entsprechenden Wrapper Funktionen dynamisch mittels Reflection.Emit erzeugt werden.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Apr 07, 2005 15:42 
Offline
DGL Member

Registriert: Mi Dez 15, 2004 20:36
Beiträge: 454
Wohnort: Wien, Österreich
Zitat:
Aber es gibt die Beta Version von Visual C# Express kostenlos zum Download bei Microsoft. Obwohl es eine Beta Version ist, läuft sie sehr stabil und ich habe sie schon einige Monate im Einsatz, ohne das mir schwerwiegende Fehler aufgefallen sind.

Geht prima, danke. Endlich.

_________________
"Meine Mutter sagt : 'Dumm ist der, der Dummes tut'." - Forrest Gump


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Sep 22, 2005 23:04 
Offline
DGL Member

Registriert: Do Apr 08, 2004 16:55
Beiträge: 516
Habe auch einen Fehler, mit der Beta von #develop2. Dieser Tritt auf wenn ich eine externe Assembly benutze wo dein Header( Auf dem mein Wrapper aufbaut ) drin ist. Sobald ich "gl." eintippe, oder die Parameter des Constructors von Context abrufen möchte kommen solche fehler( Bei glu. komischerweisse nicht! ):
Zitat:
.NET Version : 2.0.50215.44
OS Version : Microsoft Windows NT 5.1.2600 Service Pack 2
Boot Mode : Normal
Working Set Memory : 49316kb
SharpDevelop Version : 2.0.0.408

Exception thrown:
System.IO.FileLoadException: Cannot resolve dependency to assembly 'System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' because it has not been preloaded. When using the ReflectionOnly APIs, dependent assemblies must be pre-loaded or loaded on demand through the ReflectionOnlyAssemblyResolve event.
File name: 'System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'
at System.Signature._GetSignature(SignatureStruct& signature, Void* pCorSig, Int32 cCorSig, IntPtr fieldHandle, IntPtr methodHandle, IntPtr declaringTypeHandle)
at System.Signature.GetSignature(SignatureStruct& signature, Void* pCorSig, Int32 cCorSig, RuntimeFieldHandle fieldHandle, RuntimeMethodHandle methodHandle, RuntimeTypeHandle declaringTypeHandle)
at System.Signature..ctor(RuntimeMethodHandle methodHandle, RuntimeTypeHandle declaringTypeHandle)
at System.Reflection.RuntimeConstructorInfo.get_Signature()
at System.Reflection.RuntimeConstructorInfo.GetParametersNoCopy()
at System.Reflection.RuntimeConstructorInfo.GetParameters()
at ICSharpCode.SharpDevelop.Dom.ReflectionMethod.get_Parameters()
at ICSharpCode.Core.CSharpAmbience.Convert(IMethod m)
at ICSharpCode.Core.AmbienceReflectionDecorator.Convert(IMethod m)
at ICSharpCode.Core.DebuggerService.GetText(IAmbience ambience, IDecoration member)
at ICSharpCode.Core.DebuggerService.GetText(ResolveResult result)
at ICSharpCode.Core.DebuggerService.TextAreaMouseMove(Object sender, MouseEventArgs args)



Ich weiss nicht woran der Fehler liegt!

Zudem möchte er bei mir nichts Rendern( Deswegen werde ich nun erstmal Visual Studio saugen )!

_________________
Shareholder und Leitender Entwickler bei Pipedream-Games.

Zitat: Siehst du diesen Park da unten? Jeden Tag lernen sich darin Menschen kennen und verlassen einander. Und du hast dein ganzes Leben Zeit darin zu gehen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Sep 23, 2005 18:37 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Dez 28, 2002 11:13
Beiträge: 2244
Was SharpDevelop da macht, weiß ich nicht. Hab's nur einmal installiert und gleich wieder runter geschmissen. Obwohl es so einen guten Ruf hat, kommt es nicht ans Visual Studio ran.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Sep 23, 2005 22:10 
Offline
DGL Member

Registriert: Do Apr 08, 2004 16:55
Beiträge: 516
LarsMiddendorf hat geschrieben:
Was SharpDevelop da macht, weiß ich nicht. Hab's nur einmal installiert und gleich wieder runter geschmissen. Obwohl es so einen guten Ruf hat, kommt es nicht ans Visual Studio ran.


Habe ich auch gemerkt( Seit heute um 2 Uhr läuft mein Projekt ), allerdings hat es genauso wie Visual Studio ein paar Vorteile!
- Das Syntax Highlighting ist besser( Funktionen z.b. werden Speziell makiert, erhöht die übersicht erheblich )
- Vollautomatisches einrücken( Habe es allerdings vielleicht auch nicht gefunden in VS )
- Automatisches setzen von einer schließenden Klammer!

_________________
Shareholder und Leitender Entwickler bei Pipedream-Games.

Zitat: Siehst du diesen Park da unten? Jeden Tag lernen sich darin Menschen kennen und verlassen einander. Und du hast dein ganzes Leben Zeit darin zu gehen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Sep 24, 2005 06:20 
Offline
DGL Member
Benutzeravatar

Registriert: Di Nov 26, 2002 22:12
Beiträge: 259
Wohnort: Dresden
Beim VS gibt es unter Edit->Advanced->Format Document die Möglichkeit das Dokument zu formatieren. Alle Formatierungseigenschaften kannst du unter Tools->Options enstellen. In der Regel formatiert VS C# Express den Code aber auch automatisch, wenn du die schließende geschweifte Klammer setzt "}". Meist muss der Code dafür aber kompilierbar sein.

_________________
Nichts auf der Welt ist so gerecht verteilt wie der Verstand. Denn jederman ist überzeugt, dass er genug davon habe.
Rene Descartes, frz. Mathematiker u. Philosoph, 1596-1650


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Sep 27, 2005 12:29 
Offline
DGL Member

Registriert: Do Apr 08, 2004 16:55
Beiträge: 516
So noch ein Problem mit deinem Header:
Er läd keine Extensions!
Ich habe "gl.LoadExtensions();" aufgerufen, aber ich bekomme auf sämtliche Delegates nur einen "null" Pointer!

Edit: Normal sollte er es ja auch Automatisch machen, aber nichts macht er!

Hier mal exe + Assembly ( Namensgebung ist nicht gelungen )!


Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

_________________
Shareholder und Leitender Entwickler bei Pipedream-Games.

Zitat: Siehst du diesen Park da unten? Jeden Tag lernen sich darin Menschen kennen und verlassen einander. Und du hast dein ganzes Leben Zeit darin zu gehen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Sep 27, 2005 15:00 
Offline
DGL Member

Registriert: Do Apr 08, 2004 16:55
Beiträge: 516
Ich machs ungerne, aber muss wohl nochmal pushen! :(

Problem ist diese Funktion:
Code:
  1.  
  2.         private static Delegate GetAddress(string name,Type t)
  3.         {
  4.             int addr=wgl.GetProcAddress(name);
  5.             if (addr == 0) return null; else return Marshal.GetDelegateForFunctionPointer(new IntPtr(addr), t);
  6.         }


Problem ist die erste Zeile Code, diese liefert immer "0" zurück!

Hier der DLL Import:
Code:
  1.         [DllImport(gl.DLLName, EntryPoint = "wglGetProcAddress")]
  2.         public static extern int GetProcAddress(string funcname);

_________________
Shareholder und Leitender Entwickler bei Pipedream-Games.

Zitat: Siehst du diesen Park da unten? Jeden Tag lernen sich darin Menschen kennen und verlassen einander. Und du hast dein ganzes Leben Zeit darin zu gehen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Sep 27, 2005 19:54 
Offline
DGL Member

Registriert: Do Apr 08, 2004 16:55
Beiträge: 516
Nur mal so die Frage:
Hat keiner den selben Fehler?!?!

Der Fehler behindert mich dramatisch, da ich so garkeine Extensions nutzen kann! Habe den ganzen Tag damit verbraucht den Fehler zu finden, aber leider finde ich ihn nicht! Da in VS Express 2005 Beta irgendwie auch ein CPU Fenster Fehlt, kann ich es auch nicht sonderlich Debugen!

Werden bei euch alle Extensions geladen? Ich glaube der Compiler baut irgendwie scheisse!

_________________
Shareholder und Leitender Entwickler bei Pipedream-Games.

Zitat: Siehst du diesen Park da unten? Jeden Tag lernen sich darin Menschen kennen und verlassen einander. Und du hast dein ganzes Leben Zeit darin zu gehen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Sep 27, 2005 22:29 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Dez 28, 2002 11:13
Beiträge: 2244
Also bei mir geht's natürlich. Dein Bsp Programm aber nicht. Ich vermute dass OpenGL nicht richtig initialisiert wurde, denn die Extension sind erst nach dem Erstellen des Context verfügbar. Probier mal den Context erst im Ereignis HandleCreated und nicht bei Load zu erzeugen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Sep 28, 2005 11:11 
Offline
DGL Member

Registriert: Do Apr 08, 2004 16:55
Beiträge: 516
Das war das Stichwort, nicht das ich das nicht hätte wissen können, allerdings war der Fehler so Doof das ich am liebsten die nächste Brücke aufsuchen würde! :mrgreen:

thx für deine Zeit!

_________________
Shareholder und Leitender Entwickler bei Pipedream-Games.

Zitat: Siehst du diesen Park da unten? Jeden Tag lernen sich darin Menschen kennen und verlassen einander. Und du hast dein ganzes Leben Zeit darin zu gehen.


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 14 Beiträge ] 
Foren-Übersicht » Programmierung » Allgemein


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 7 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.008s | 15 Queries | GZIP : On ]