Registriert: Mi Dez 03, 2008 12:01 Beiträge: 167 Wohnort: /country/germany
Programmiersprache: C++ / FreeBASIC
Lord Horazont hat geschrieben:
Das ist auf Windows aber durchaus gängig, weil die meisten 0815-User von Meldungen, dass DLLs fehlen abgeschreckt werden und es dann gleich lassen. Solange noch kein wirkliches Release mit Installer, der ggf. selber den OAL-Installer aufruft, existiert, ist es so schon ganz sinnvoll. Mal abgesehen davon, dass so gut wie alle Anwendungen unter Windows das so machen.
So gut wie alle? Das war jetzt bei mir erst das zweite Programm, dass das so macht (das andere war Mirror's Edge). Die Codemasters Spiele z.B. machen das richtig. Lieber einfach die oalinst.exe mitliefern mit entsprechendem Hinweis, das ist sauberer und wird auch vom SDK so empfohlen.
_________________ Traue keinem Computer, den du nicht aus dem Fenster werfen kannst -- Steve Wozniak
Registriert: So Mai 11, 2003 10:36 Beiträge: 285 Wohnort: Oldenburg
Programmiersprache: Object Pascal
Oft kann man auch gar nicht so schnell sein Projekt einer neuen Version anpassen. Dann kommt man ja auch nicht nach, mit dem eigentlichen Projekt.
Siehe z.b. Linux. Hier gibt es auch nur Sicherheits Updatest. Wenn du eine Neue Version haben möchtest von einer Lib oder einem Programm musst du in der Regel warten bis von Ubuntu eine neue Version gibt. Oder du installierst dir diese Version nebenbei, aber dann gibt es kein Automatisches Updaten(Meines Wissens).
Ich halte es für Richtig, im Anfangs Stadium so vorzugehen. Später kann man das ja immer noch ändern, oder?
Bei FFMpeg habe ich es gesehen: Dort gibt es von einigen Funktionen drei Versionen, alle mit Unterschiedlichen Parametern.
_________________ MFG<br> Michael Springwald, <br>
Bitte nur Links in Deutsch, nutze überwiegend Lazarus
Registriert: Do Sep 02, 2004 19:42 Beiträge: 4158
Programmiersprache: FreePascal, C++
Nun, wenn die Bibliothek sauber geschrieben und dokumentiert wird, dann werden Funktionen, die sich ändern können, speziell markiert, genauso wie funktionen, die entfernt werden werden (deprecated). Da sollte man halt schauen, dass man entweder diese Funktionen nicht benutzt oder sich darauf einstellt, das anzupassen.
Wie das von den Linux-Distributionen gehandhabt wird, ist unterschiedlich. Bei ArchLinux zum Beispiel gibt es keine Distributions-Releases sondern neue „große“ versionen von Paketen kommen so in die Repositories. Das geht auch, und zwar ohne, dass bei Arch eine riesen Gruppe Menschen sitzt, die die Programme per Hand korrigiert.
Häufiger sind tatsächlich Probleme, wo die Distribution aktuelle Programme aber veraltete Bibliotheken ausliefert (das Problem hatte ich bei Fedora mit Mumble, wo die Codecs im System veraltet waren, weshalb Mumble nicht funktionierte). Aber wenn man davon ausgeht, dass aktuelle Bibliotheken da sind, hat man eigentlich relativ wenige Probleme.
greetings
_________________ If you find any deadlinks, please send me a notification – Wenn du tote Links findest, sende mir eine Benachrichtigung. current projects: ManiacLab; aioxmpp zombofant network • my photostream „Writing code is like writing poetry“ - source unknown
„Give a man a fish, and you feed him for a day. Teach a man to fish and you feed him for a lifetime. “ ~ A Chinese Proverb
Registriert: Mi Apr 13, 2011 22:05 Beiträge: 218
Programmiersprache: Lazarus/FPC
Wooow, kein Gestreite bitte^^ Also die OpenAL32.dll hab ich einfach vollständigkeitshalber dazugegeben. Wer OpenAL installiert hat bei dem würde es auch so laufen schätz ich mal, aber da das nicht bei allen der Fall ist hab ich sie einfach dazugegeben. Ich schätze mal wer es eh installiert hast und die dll aus dem Ordner löscht bei dem wirds sicher auch gehen!
Zitat:
Hab mir deine Engine mal heruntergeladen. Sieht soweit echt gut aus (sogar mit Doku ^^), allerdings fallen mir zwei Dinge auf: 1. Wenn ich die "Runtime.exe" starte, bekomme ich nur die Meldung: >Couldn't load JPG - "C:\Users\FeigenOpi\Desktop\GAME\Texturen\jf128.jpg"<
Die Runtime.exe im Ordner 3DEXE ist nichts anderes als eine Art Abspielprogramm für die engine. Sie wird ausgeführt wenn du ein Spiel in der engine testest. Das Pronzip ist recht einfach: Die engine speichert alle Objektdaten, Texturpfade, Soundpfade, Animationen, kompilierte Skripts ect in die Datei "game.idg" im 3DEXE-Ordner. Wenn du nun Runtime.exe ausführst wird einfach alles aus dieser Datei geladen und als Spiel ausgeführt. So einfach ist daszum verstehen!
In der game.idg ist halt anfangs noch ein von mir gemachtes Probeszenario gespeichert, die auf eine Textur zugreift die ihr natürlich nicht habt =)
_________________ Ich teile manchmal heimlich durch Null. - Alber Einstein
Registriert: Mi Apr 13, 2011 22:05 Beiträge: 218
Programmiersprache: Lazarus/FPC
Relative Pfade werden verwendet wenn das Spiel fertig gestellt ist. Das was oben beschrieben ist ist quasi nur das Spiel "testen". Kann man vergleichen wie das Debuggen bei Delphi. Da werden beim testen die absoluten pfade verwendet!
Wenn man das Spiel nun fertigstellt und anderen Leuten zum spielen geben will muss man das Spiel einfach "releasen", dazu gibts im editor einen eigenen button im hauptmenü, so ein Hammer. Dabei werden die Exe, die Spieledatei game.idg und die OpanAL32.dll in einen ordner gesteckt, und alle Texturen und Sounds von den Pfaden kopiert und in einen weiteren Ordner namens "data" gesteckt von wo sie dann beim Spielstart lokal aufgerufen werden =)
Der Ordner eines fertigen Spiels sieht dann so aus: ==== Game.exe game.idg openal32.dll DATA(Ordner) ===== Textur 1.jpg Textur 2.jpg ...... ===== ====
_________________ Ich teile manchmal heimlich durch Null. - Alber Einstein
Registriert: So Mai 11, 2003 10:36 Beiträge: 285 Wohnort: Oldenburg
Programmiersprache: Object Pascal
Zitat:
Ich hatte da eine Art fertiges kleines Beispiel erwartet
War es das nicht auch? In den Videos ist Deutlich der Schrift Zug "Tech Demo" zu lesen.... oder so ähnlich. Bin schon auf neue Videos und Bilder gespannt....
_________________ MFG<br> Michael Springwald, <br>
Bitte nur Links in Deutsch, nutze überwiegend Lazarus
Registriert: Mo Sep 23, 2002 19:27 Beiträge: 5812
Programmiersprache: C++
Code:
Ida Benchmark:
==============
OpenGL: 4.1.11079 Compatibility Profile Context
GPU: AMD Radeon HD 6800 Series
Gesamtframes: 22313
Durchschnitt: 1014
Maximum: 1099
Minimum: 829
Aber sag mal, welche Auflösung nutzt du denn? Hab nich gesehn dass mein TV umgeschaltet hat, also wohl Desktopauflösung? Wenn ja, macht der Benchmark ja kaum Sinn. Da müsste man schon ne feste Auflösung und feste AA/AF-Settings nutzen um vergleichbare Ergebnisse zu erlangen.
Und so als kleiner Hinweis am Rande : Fremde Texturen und Bilder (teileise aus Rage, oder?), die nicht lizensiert/lizenfrei sind, sollte man nich unbedingt öffentlich mit seiner Software verteilen.
Allerdings versteh ich nicht ganz was die Werte bedeuten? Gesamtframes = Anzahl an gerenderten Frames, also sprich umso mehr desto besser?
Die Graka hier im Notebook ist eigentlich recht gut, in der Praxis hängt sie meine alte GTX 460 Desktopkarte in allen sachen ab. Aber dennoch, versteh ich die Werte nicht... die GTX 260 von dir macht 39072 Frames und die GTX 580M 24063?
Da stimmt doch was nicht....
Vor allem, wurde bei mir das Fenster falsch Positioniert (Top war < 0, so das ich die hälfte der Win7 Taskleiste gesehen habe. Desktop Auflösung ist 1920x1080.
Vermutlich werden hier unterschiedliche Auflösungen getestet.
Registriert: Mi Apr 13, 2011 22:05 Beiträge: 218
Programmiersprache: Lazarus/FPC
Zitat:
Und so als kleiner Hinweis am Rande : Fremde Texturen und Bilder (teileise aus Rage, oder?), die nicht lizensiert/lizenfrei sind, sollte man nich unbedingt öffentlich mit seiner Software verteilen.
Jaaaaaaaa, die gute alte Urheberrechtsleier. Ich lass mich jetzt nicht genauer darüber aus weil das nur euren Wortschatz an Schimpfwörtern erweitert, stattdessen geb ich mich geschlagen und hab mir die halbe Stunde genommen und alle Texturen aus dem benchmark ersetzt mit Eigentexturen, erstellt aus alten Urlaubsfotos. Sieht zwar jetzt nicht mehr gaaaanz so super aus(besonders die Felsen), aber was tut man nicht alles für ein reines Gewissen
Beim Benchmark wird die aktuelle Bildschirmauflösung hergenommen, einfach aus dem Grund weil die Grafikanforderungen eh nicht weiß Gott wie hoch sind. Was mich vor allem intressiert hat hier ist die unterschiedliche Leistung von Notebooks/DesktopPCs und ATI bzw NVIDIA Grafikkarten.
Zitat:
Vor allem, wurde bei mir das Fenster falsch Positioniert (Top war < 0, so das ich die hälfte der Win7 Taskleiste gesehen habe. Desktop Auflösung ist 1920x1080.
Da weiß ich noch net was es hat, ich schau mal meinen Code durch nach diversen Unstimmigkeiten.
Mal allgemein noch: Die Benchmark-Ergebnisse sind so gesehen nichts-aussagend. Darum wollte ich auch das es ein paar Leute testen dann kann man sich mal ungefähr ein Bild davon machen.
_________________ Ich teile manchmal heimlich durch Null. - Alber Einstein
Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast
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.