Was braucht ein Egoshooter alles (Thread: darkinsanity)

Hier könnt ihr Infos über neue Ego-Shooter bekommen und fragen zu neuen Ego-Shootern stellen usw.

Moderator: Demon

Was braucht ein Egoshooter alles (Thread: darkinsanity)

Postby Whitefire » 25.10.2009, 20:13

Ein herzliches Hallo an alle GZ Community!

Mir ist da leider ein kleiner Fehler unterlaufen und dabei ist das originale Thema "was braucht ein egoshooter alles" (erstellt von darkinsanity für seinen Shooter) abhanden gekommen... zur Neuintegration müsste wieder die komplette Datenbank überschrieben werden... Sry :(

Aber ich habe die ganzen Beiträge aus dem alten Forum hernehmen können und füge die einfach mal als Quote mit an:

Die dafür gute Nachricht: Dein Thema konnte endlich zu Ego-Shooter -> Allgemein verschoben werden ;)

Darkinsanity:
Wie ihr wahrscheinlich nicht wisst, schreibe ich schon seit längerem an einem 3D-Egoshooter. Was mich jetzt mal interessiert:
Was braucht ein Egoshooter denn alles, damit ihr ihn spielt? Wieviel verschiedene Waffen usw. ?


RAMBO:
Waffen, Gegner, verschieden levels.....KP^^


Lucki:
ich finde, man sollte viele möglichkeiten haben ein level zu schaffen

1. Weg z.B. indem man einfach schießend drauflosrennt ("Sirious Sam")
2. Weg z.B. indem man schleicht und versucht einen Gegner nach dem anderen aus dem Weg zu schaffen (eine Möglichkeit in "No One Lives Forever 2")

Auch sollte es nicht nur ein reiner shooter sein... man sollte auch geistreiche Aufgaben lösen oder Gegenstände finden müssen (auch in "No One Lives Forever 2")
Außerdem sollte es intelligente KI-Gegner geben, aber auch möglichkeiten um sich vor diesen zu verstecken...
Waffen sollte es mit verschiedenen Eigenschaften geben. Auch sollte es vielleicht Lachgas oder Bananen geben (lass dir was einfallen), womit man Gegner ausser Gefecht setzen kann.

:lol: ich freu mich schon auf dein Spiel...


Demon:
darkinsanity-.- des hier issen fehlpost, gehört zu-> Egoshooter - Allgemein - Gesprächsecke Wink

Wieviel versch. Waffen iss an und für sich egal aber es sollten mind. 5 sein, am besten welche die´s auch gibt, ausser es wird en Sci-Fi Shooter

Ansonsten-> Ne gescheite Story
Gute KI (ich hab dir ja mal den Artikel gezeigt (glaubi jedenfalls) das 99% der heutigen KI Gegner Cheaten und des will echt keiner)

Einstellbarer und steigender Schwierigkeitsgrad, aber net so wie in Übersoldier, wo die Gegner 10ma stärker sinn wie du

ne konsole wie in HL², die aber keine cheats zulässt, sondern nur das "protokoll" anzeigt, um im spiel fehler zu sehen (jetz keine bugs, sondern fehlerhafte dateien)

jetz mal was was mittem shooter an sich nix zu tun hat, sondern im spielverzeichniss sollte der ordner mit den spielständen LEICHT! zu finden sein


RAMBO:
Wenn amn alle ideen der anderen berücksichtig: man sollte auf nen gegner treffen, derne über-starke waffe hat, den man TAKTISHC plätten muss....ratze fatze isse rübe ab^^
[offtopic]abgesägte schrotflinte: *pam* pam *chick* Pchick* *pam* *pam* *chick* *chick*


Kisel:
multiplayer!!


RAMBO:
KOOP-Singleplayer. Ich meine, dass man mit Freunden (online) missionen lösen muss.
Edit: Bei treffern sollte der Bildschirm vershwimmen (schmerzenstränen)


kisel:
die gegner sollten von einem headshot sterben, egal bei welcher schusswaffe.


Darkinsanity:
Als erstes: Danke für die Antworten.

Dark-Demon wrote:darkinsanity-.- des hier issen fehlpost, gehört zu-> Egoshooter - Allgemein - Gesprächsecke

Aber ich hab auch einen Jobangebot gemacht: Berater bei einem Ego-Shooter :-P

Devil-Driver wrote:Bei treffern sollte der Bildschirm vershwimmen (schmerzenstränen)

Könnte schwer werden, aber ich werds versuchen.
kisel wrote:die gegner sollten von einem headshot sterben, egal bei welcher schusswaffe.

war auch so geplant.
Devil-Driver wrote:KOOP-Singleplayer. Ich meine, dass man mit Freunden (online) missionen lösen muss.

Ich hatte schon an einem Online-System gearbeitet, ist aber nicht einfach. Ich werds auf jeden Fall versuchen, versprechen kann ich allerdings nichts.
Devil-Driver wrote:Wenn amn alle ideen der anderen berücksichtig: man sollte auf nen gegner treffen, derne über-starke waffe hat, den man TAKTISHC plätten muss....ratze fatze isse rübe ab^^

Ja, ich finde, ein bisschen Taktik sollte schon rein.
Dark-Demon wrote:Wieviel versch. Waffen iss an und für sich egal aber es sollten mind. 5 sein, am besten welche die´s auch gibt, ausser es wird en Sci-Fi Shooter

Das Spiel soll in drei verschiedenen Zeiten spielen: Mittelalte oder Antike (weiß ich noch nicht so genau), Gegenwart und Zukunft. Man wird mit einer Zeitmaschine reisen.
Dark-Demon wrote:Ansonsten-> Ne gescheite Story
Gute KI (ich hab dir ja mal den Artikel gezeigt (glaubi jedenfalls) das 99% der heutigen KI Gegner Cheaten und des will echt keiner)

An der Story arbeite ich noch. Ne gute KI ist schwer, aber meine wird auf gar keinen Fall cheaten.
Schwierigkeitsgrad wird einstellbar sein, Konsole mach ich auch und cheats gibts keine, spielstände bekommen nen eigenen Ordner.
Lucki wrote:Auch sollte es nicht nur ein reiner shooter sein... man sollte auch geistreiche Aufgaben lösen oder Gegenstände finden müssen (auch in "No One Lives Forever 2")
Außerdem sollte es intelligente KI-Gegner geben, aber auch möglichkeiten um sich vor diesen zu verstecken...
Waffen sollte es mit verschiedenen Eigenschaften geben. Auch sollte es vielleicht Lachgas oder Bananen geben (lass dir was einfallen), womit man Gegner ausser Gefecht setzen kann.

Ich finde nichts blöder als ein Ego-Shooter ohne Story wo man nur rumballert und weiß nicht warum. Daher wird es schon ein paar Rätsel geben. Ich habe folgende Waffen geplant: stationäre Waffen, Raketenwerfer, Granaten, Pistolen, Laser-Scharfschützengewehre und noch ein paar andere.

Achja: Der (vorübergehende) Name des Spiels ist TIMEZ.
So, hier ein Link zu der Engine-Demo: http://www.greensoft.de.vu/timez/TIMEZ-V0.8.5.zip
Bitte beachtet: Die Engine ist nicht die aktuellste, OpenGL ist noch nicht eingebaut und es gibt noch keine Levels etc.
Bitte berichtet mir Steuerungsprobleme, Grafik-Fehler usw.
Ich arbeite schon ganz eifrig an den verbesserungen.


/Edit:

So, ich weiß, die Demo sieht ziemlich bescheuert aus, und wenn die Grafik so bleiben würde, würde das keiner spielen. Aber keine Angst, ich hab mir eben 40 OpenGL Tutorials runtergeladen, die werd ich alle durcharbeiten. Danach wird die Grafik saugeil. Ich schwörs.
Aber, ich brauch dann Leute, die sich die Levels und Texturen ausdenken (natürlich werden die Personen dann auf meiner website und in der readme genannt), denn hauptsächlich bin ich Programmierer und kein Grafiker oder Leveldesigner. Aber wenn ihr Ideen habt, iss das auch schon mal was.

Ich hab auch ein paar neue Features in mein Spiel eingebaut (nicht in der Demo enthalten):
eine screenshot-funktion, die durchnummerierte BMP-Dateien erstellt. Die Taste dafür ist F5.
ein Menü, das erscheint wenn man im spiel Esc drückt.
Alle wichtigen Ereignisse und Vorgänge werden protokolliert, wenn man später die Konsole aufruft steht dort alles. so kann man fehler/bugs melden. leider ist die konsole noch nicht fertig. außerdem wird eine datei erstellt, in der alles steht was auch in der Konsole erscheint, falls das spiel abstürzen sollte, kann man mir diese Datei senden und ich kann genauer eingrenzen, wo der Fehler liegt.

Ich werd euch mitteilen, wenn ich OpenGL eingebaut hab. Könnte aber en bisschen dauern, ich hab noch ein paar andere Projekte, an denen ich arbeite (unter anderem ein richtiges Betriebssystem in Assembler mit Multitasking usw.). Aber ich werd mich beeilen.


Demon:
Naja bin jetz ma zum testen gekommen, ich weiss net obs an meinem pc liegt aber die bewegungsabläufe sind zu schnell, man tippt kurz auf pfeiltaste-oben und rennt 20 meter


Für Texturen und Leveldesign kannste schonmal auf mich zählen ich kannja so einiges mit Gimp


Darkinsanity:
ok, das liegt daran, das ich keine Brems-schleife eingebaut hab, die den spielablauf abbremst. bei meiner neuesten demo (noch nicht im web) hab ich eine schleife drin, allerdings speziell für meinen Core2Duo 3Ghz. ich muss da noch rumprobiern, denn ich will ja hohe Frameraten.

So: Ich habs geschafft! OpenGL ist in meiner Engine eingebaut. Hier eine kleine Features-liste:
Smooth Shading: weiche Licht-Schatten übergänge
ambient light: alle texturen werden von diesem licht (kann auch schwarz leuchten) angestrahlt
diffuse lights: lichter, die man im level positionieren kann
MipMapped Textures: Beste darstellung für Texturen

Die Demo wird bald kommen. Leider wieder nur ne Demo mit einer Box. (aber mit textur und licht.)


Lucki:
Hört sich schonmal gut an. :thumbright:

Weiter so!


Darkinsanity:
iss aber nich einfach. ich werd vielleicht noch OpenAL einbauen, damit kann man soundquellen im 3D-Raum angeben. Dann ist der Sound realistischer.
Und ich hab momentan ein Problem mit meiner .TGA lade-routine. ich konnte mit GIMP erstellte dateien nicht einlesen und mitlereweile gehts gar nicht mehr.


TJ:
Cool, das wir hier einen Programmierer haben!
Also ich mag Schleichaufgaben, aber auch Ballereien.
Es könnte auch ein Taktik-Shooter sein, in dem bis zu 64 (32 reicht auch^^) Spieler aufeinander treffen.
Es sollte mehrere Klassen (Scharfschütze, MG-Schütze, ...) geben.
Wenn man sich durch die Antike oder das Mittelalter ballert, sollte es zeitgemäße Waffen geben (z.B. ein Schwert)
Wenn möglich wären Fahrzeuge und zerstörbare Umgebung cool;-)
Ich freu mich auf jeden Fall!


Darkinsanity:
sorry jetzt gibts leider ne kleine enttäuschung. und zwar wird das mit dem spiel in nächster zeit wohl nix. unter anderem gibts es ein Problem mit den texturen und OpenGL, irgendwie kann ich die texturen nicht richtig laden. und ich arbeite noch an einem Online-Spiel (in dem es auch noch viele Fehler gibt) und an einem OS und ich hab auch noch nur wenig zeit. Aber das Spiel wird auf jeden Fall 3D Sound kriegen der sehr realistisch klingt. Außerdem informiere ich mich gerade über Partikelengines und wie man damit z.b.: wolken und blitze erstellt die auch geil aussehen.
Ich arbeite an der Lösung der Probleme, aber es kann dauern... Außerdem brauch ich noch jemanden, der sich levels ausdenkt, mir sagt was für das level alles benötigt wird und der das level später dann auch erstellt (mit einem 3D-Programm).
Fahrzeuge sind geplant und zerstörbare Umgebung teilweise auch, d.h. man wird nicht einfach die komplette spielwelt auf einmal wegpusten können, aber bestimmte teile zerstören.


TJ:
ich könnte mit google sketchup (nicht allzu detaillierte) maps erstellen, die ich dann in eine .3ds-file konvertieren :D
dazu hätte ich auch noch ein paar ideen ;-)


DMA TAKE 2:
Bei der umsetzung des Multiplayers könnte ich den Server schreiben ;)
Also falls Interesse besteht einfach mir eine PM senden.


Darkinsanity:
hm, ich glaube ich müsste den kompletten code des spiels neu schreiben... der code is einfach zu verhackstückt, ich hab lang dran rumgebastelt und übersichtlich ist er auch nicht. schlimmer ist noch, das er nicht mit den neueren versionen des FreeBASIC-compilers funktioniert, sondern nur mit der alten version 0.15, die auch noch ein paar bugs enthält. falls ich mal zeit und lust habe, werde ich mich daran machen das ganze neu zu schreiben. ich werd dann auch das kamerasystem neu schreiben, unter anderem mit dem von egoshootern bekannten seitwärtsgehen. wenn ich an gescheites internet komme kann ich ja mal den alten code hochladen, falls sich jemand dafür interessiert.


Darkinsanity:
hi,
ich weis, der Thread is alt, aber da ich in letzter Zeit wieder Zeit gefunden habe (was für ein Satz...), habe ich an dem nachfolgeprojekt gearbeitet.
Es ist nun von Anfang an besser aufgebaut, und ich habe es einfacher den code zu erweitern.
Momentan funktioniert bereits das laden eines levels+texturen (noch ein eigenes Format, aber ich werde mich mal über andere Formate informieren...), außerdem ist ein neues Kamerasystem eingebaut (vorwärts, rückwärts, drehen, strafen).
Zum laden der Texturen wird FreeImage verwendet, bringt zwar ne 2MB große .dll mit aber dafür habe ich eine große Zahl von unterstützten Formaten (unter anderem auch HDR-Formate). FMOD wird zwar schon initialisiert, aber die Möglichkeit Sound zu verwenden ist noch nicht eingebaut.
Falls sich jemand über die niedrigen Frameraten wundert, dem sei gesagt, das es runtergebremst wird. (bei meinem Core 2 Duo 3Ghz sinds 1311 FPS)

Die Demo gibts hier.


Lucki:
Sieht ja wieder mal für den Anfang ganz gut aus :-)

Nur die Startweise ist ein wenig gewöhnungsbedürftig xD ich starte nicht jedes spiel, indem ich das X rechts oben benutze :-D
Und im SPiel selber funktioniert das X dann nicht mehr...


Darkinsanity:
thx
also, das programm wartet am anfang auf zwei tastendrücke (das x zählt auch als tastendruck^^), das programm wird dann mit Esc beendet.
das demo-level ist nicht soo toll, weil ich erstmal was zum testen der grundroutinen gebraucht hab.

Ich hab auch noch vor eine Physik-Engine einzubinden. Da nVidia aber leider keine FreeBasic/VisualBasic header für PhysX anbietet, werde ich wohl Newton Game Dynamics nutzen müssen (die bisher einzige Engine die unter FreeBasic funktioniert).

Beim Sound hoffe ich das FMOD Ex bald unter FreeBasic geht, ansonsten muss ich weiterhin das etwas veraltete FMOD 3 nutzen.

/edit: neue Version: verbessertes Kamerasystem + Maussteuerung
Link bleibt derselbe


/edit2:
nochmal neue Version: Diesmal alle texturen als .png statt .tga und in der config-file kann nun fullscreen-AntiAliasing aktiviert werden (senkt die Framerate stark! auf meinem PC von 1300 auf 300)


Darkinsanity:
So,

ich hab mich ja mal wieder eine Weile hier nicht sehen lassen ;)

Aber ich werde euch jetzt mal mitteilen was ich in der Zwischenzeit alles eingebaut habe:



Screenshots:

Wegen einem wirklich kleinen, fiesen Bug konnte ich die ganze Zeit keine Screenshots von meiner Engine erstellen lassen. Vor einigen Tagen konnte ich den Bug endlich finden, und jetzt kann man mit F5 screenshots erzeugen. (format: yyyy.mm.tt_hh.mm.ss.png, im Ordner data\screenshots



Neues Modelformat:

Die Engine nutzt nun das XMF V0.1 Format. Das ist ein speziell an die Engine angepasstes Format, das ich mir in den Ferien ausgedacht habe. Es hat einige Nächte verschlungen bis alles so lief wie ich es wollte.

Außerdem existiert jetzt ein mapCompiler, mit dem das textbasierte Format in das neue Format umgewandelt wird.

Das neue Format ist deutlich kleiner, da es nicht mehr auf text basiert, und die Engine ist dadurch auch ein wenig kleiner und übersichtlicher geworden. Das Format ist nicht "fertig", je weiter die Enginen entwickelt wird, desto weiter wird auch das Format entwickelt, um die Features auch ausnutzen zu können.

Wenn ihr die demo-Map (haha, tolle Map) verändert habt, klickt einfach doppelt auf die "buildMaps.bat", die ruft automatisch für jede .mdl-Datei im Verzeichnis den mapCompiler auf, der dann die .xmf-Datei erzeugt.

Für diejenigen, die es interessiert, ist auch der Quelltext des mapCompilers dabei (in "data\maps\MapCompiler sourcecode").



VBOs:

Ich hab am 29.4. auch die Vertex-Buffer-Objects fertig gekriegt. Vorher hab ich die Daten in jedem Schleifendurchlauf neu an die Grafikkarte gesendet. Nun wird beim laden eines Models ein VBO erstellt und die Daten reingeschrieben. Dadurch können jetzt mit einem Befehl an die Grafikkarte Millionen von Polygonen gerendert werden, und die Performance ist verbessert (besonders bei vielen Polygonen). Außerdem liegen die Daten nun im VRAM der GraKa, wodurch weniger Daten im PC rumgeschickt werden müssen.



Extensions:

Um die VBOs nutzen zu können, muss man die OpenGL-Extensions (Funktionserweiterungen) nutzen können, was bisher leider nicht klappte. Daher musste ich erst lange an meinem "Yang OpenGL toolset" rumschreiben, bis alles glatt lief. Dafür kann ich jetzt auch mit dem Shader-Support beginnen, womit dann endlich Per-Pixel-Beleuchtung, Toon-Shading und andere sehr interessante Techniken möglich werden (unter anderem auch ein Partikelsystem, das komplett auf der Grafikkarte läuft).



Ich arbeite momentan am Shader-Support, Orthogonal-Projektion (für ein HUD), Texturen-Kompression (damit nicht gleich der ganze VRAM voll ist) und an der Audioausgabe, die über OpenAL laufen soll. Leider hör ich irgendwie keinen Sound, obwohl die Initialisierung und die Buffer-Erzeugung laufen...



Außerdem achte ich nun darauf, meine Engine möglichst kompatible zu OpenGL 3 zu machen, denn viele alte Techniken (z.B. der alte Rendering-Modus, deswegen hab ich die VBOs eingebaut) existieren in OpenGL 3 nicht mehr. Und ohne Shader sieht man da gar nichts mehr, es gibt kein Standard-Rendering mehr, man braucht von Anfang an Shader.



Was meiner Engine noch fehlt ist unter anderem ein benutzbares Partikelsystem, ohne das realistische Effekte wie Feuer und Rauch praktisch nicht möglich sind. Wenn ich Zeit habe werde ich auch noch ein paar Konverter schreiben, damit man andere Formate zu XMF konvertieren kann. (3ds, evtl. auch Milkshape)



Theorethisch könnte man mit der jetzigen Engine schon kleine Spielchen realisieren, aber die würden nicht gut aussehen ;)

Das Problem ist, das man zu aktuellen Techniken gar nicht mehr wirklich aufholen kann (wer Half-Life 2 Episode Two gespielt hat weiß wovon ich rede. Stichwort Superportal). Valve benutzt z.B. schon Shader für Texturen-Erzeugung & Beleuchtung, ein komplexes Event-System und eine absolut kranke Physik-Engine (Stichwort "cinematic Physics"). Gemixt mit mehreren Millionen Polygonen :)

Trotzdem werde ich mein bestes versuchen.



Mittlerweile steckt schon eine ganze Menge Arbeit drinnen, auch wenn man das leider nicht sieht.

Wenn ihr mir einen gefallen tun wollt: Im Ordner "data\log" liegen die "game.log" und die "GLext.log". Es wäre super, wenn mal ein paar Leute meine Engine laufen lassen würden und mir dann die logfiles geben, damit ich sehen kann, welche Features auf welcher GraKa laufen. Ich kann auch sehen wieviels FPS ihr gehabt habt, was auch eine nützliche Information ist. (Bei mir sind es maximal 1277 FPS)



Na super, ich hab ja nen ganzen Roman geschrieben. Naja, ich hoffe mal, das ich euch nicht zu Tode gelangweiligt habe.

Sollte meine Freehoster-Site wider erwarten erreichbar sein, könnt ihr die aktuelle Demo hier ansehen: http://darkinsanity.freehoster.ch/cd.zip


Lucki:
leider kann ich die Datei nicht downloaden...
Schonmal versucht, sie an deinen post mit 'Datei anhängen' anzuhängen?

edit: hab sie von whity bekommen

fps: ~4200

logs im anhang


Darkinsanity:
danke :)
Schön das jemand sich noch dafür interessiert. Deine FPS-Zahl zeigt mir mal wieder, was ich für ne schlechte GraKa hab :D
Die Probleme mit dem Download liegen an meinem Server von freehoster.ch. Daher hab ich die neueste Version sowohl auf dem Server als auch hier angehängt.

Achja: Neue Version.
Diesmal ist eine kleine Partikel-Engine dazu gekommen. Einfach mal "N" drücken.
"cd.exe" ist die normale Version, bei "cd_slow.exe" sind die Partikel sehr viel langsamer, damit man den Effekt beobachten kann.
Das Partikelsystem ist natürlich noch nicht sehr weit, es fehlen noch Dinge wie Lebensdauer usw., momentan werden die Partikel einfach zurückgesetzt wenn sie außerhalb eines bestimmten Bereichs liegen.
Damit das ganze möglichst realistisch aussieht, werden Position, Geschwindigkeit und Farbe per Zufall festgelegt.
Momentan läuft das ganze mit 200 Partikeln. Ab 200 Millionen Partikeln sinkt bei mir die Framerate auf 0 FPS :D
In "data\pics\" liegt die "particle.png", das ist die Textur für die Partikel. Zum ändern der Textur einfach die Datei austauschen.

Mit den Shadern gibt es momentan noch ein paar Probleme, aber wenn es dann läuft, sind Effekte wie dieser hier möglich: http://wiki.delphigl.com/index.php/shader_radial_blur

//edit:
Der Anhang wurde entfernt. Neuere Version weiter unten.


Lucki:
dafür hab ich ne schlechte cpu ;)

Die partikel sollten sich noch zur Kamara hindrehen, damit man nicht sieht, dass es Flache Bilder sind.

Der Schader Effekt (glaube, man nennt ihn auch Motion Blur) sollte natürlichnur sehr sparsam zum einsatz kommen, z.B. indem er an eine Hohe Geschwindigkeit gebunden wird Very Happy


Darkinsanity:
Das mit dem drehen zur Kamera, das mache ich gerade. Dafür muss man "nur" die Rotation, die die Kamera macht, wieder aus der Matrix entfernen.
Mein Ziel war es, mit dem Partikelsystem einen Feuereffekt hinzukriegen, aber irgendwie haut das noch nicht hin.
Hab auch gerade auf DelphiGL gelesen, das es sinvoll ist die Partikel-Berechnungen in einen eigenen Thread auszulagern, vor allem bei Mehrkern-Prozessoren.


The Gnaa:
bei mir sagt er immer anwendung konnte nicht gesatrtet werden openAL32.dll wurde nicht gefunden

??

[edit]

problem behoben


Darkinsanity:
ups, ja, hab vergessen zu sagen dass man OpenAL installieren muss ;) Sind nur en paar DLLs, die auch von anderen games benutzt werden (Unreal 2, Race Driver Grid). OpenAL bietet hardwarebeschleunigten 3D-Sound.
Die aktuelle Version versucht bereits Sound auszugeben. Warums nicht klappt weiß ich noch nicht, aber ich finde, dass das Partikelsystem erstmal Vorrang hat. Sollte ich das Problem aber finden werde ich es sofort beheben.

Heute hab ich was über "sphärisches Billboarding" gelesen, das den komischen Effekt bei den Partikeln angeblich behebt. Werd ich dann mal ausprobieren. nVidia hat auch eine Extension für OpenGL, das praktisch automatisch sphärisches Billboarding bereitstellt. Nur sind die Spezifikationen immer so schwer zu verstehen...


TJ:
wenn ich mal so fragen darf:
billboarding=?


Darkinsanity:
Billboarding richtet die Partikel parallel zur Kamera aus :)

Ich geb euch hier mal wieder neu neue Version:
1. Es gibt nun eine Skybox. Die Texturen hab ich mit Terragen und nem selbst zusammengebastelten Script erledigt.
2. Ist die Partikelengine nun ganz anders aufgebaut, Sie zeichnet nun keine Quads mehr, sondern nutzt die im Jahr 2003 eingeführte "Point-Sprite"-Erweiterung von OpenGL. Damit werden die Partikel automatisch ausgerichtet.

Mein Problem ist nur, das auf meinem PC die Partikel keine Textur mehr haben, Nur ab und zu flackert die Textur auf. (GraKa; Radeon HD 2400 XT)
Ich hoffe mal, das ein paar Leute das mal auf anderen GraKas testen können (vor allem nVidia), und am besten gebt ihr mir Screenshots.

Partikelsystem wird weiterhin mit "N" aktiviert.

Zur Skybox: Ich hab die mal schnell eingebaut, weil ich da so ein Tutorial gesehen hab, und das wirklich schnell ging. Leider sieht man die Ränder der Skybox sehr deutlich. Ich informier mich mal, wie ich die weg krieg.
Das lustige ist, das die Skybox genauso groß ist wie der kleine Würfel, aber trotzdem groß aussieht. Dadurch das sie klein ist, hat man ein paar FPS mehr.

Die OpenAL32.dll ist diesmal dabei, damit ihr nicht extra OpenAL installieren müsst.


/edit: Ok, das die Texturen fehlen war ein Bug im ATI-Treiber. Aber jetzt stehen die Texturen aufm Kopf... Screenshots erwünscht.


Lucki:
jetzt geht alles

Partikel fliegen langsam sich zur kamera drehend.
Max. FPS: 75.
Skybox ist dir richtig gut gelungen. :thumbright:
Man sieht ab und zu Ränder, aber erst nachdem ich deinen Screenshot angeschaut habe, wusste, wonach ich suchen muss.
Vorher hab ich sie nicht bemerkt...

Was ich noch sehr gut finde, wäre dies hier.
Nur sollte man als rechtes Auge Cyanblau, anstatt grün verwenden (ist gebräuchlicher).


Darkinsanity:
So, nach etwas längerer Pause melde ich mich wieder mit einer neuen Version.
Grafisch hat sich nicht viel getan, aber intern wurde einiges verändert.

Zuerst habe ich den Render-Vorgang optimiert, was jetzt wahrscheinlich noch nicht auffällt. Aber wenn ich dann viele Polygone rendern werde, wird der Unterschied deutlich spürbar sein.
Das Rendern läuft jetzt so ab:
1. Grafikkarte Aufgaben geben
2. Cpu arbeiten lassen (Tastatureingaben usw.)
3. warten bis die GraKa fertig ist und Bild anzeigen

Als zweites habe ich die SkyBox-Routinen etwas umgebaut, das bringt ein bisschen Geschwindigkeit und macht für mich den Sourcecode übersichtlicher. Außerdem könnte ich den Speicher der SkyBox jetzt auch vor Programmende freigeben.

Und nun zur wohl wichtigsten Änderung: Ich nutze jetzt endlich Shader. Damit sind schöne Effekte möglich, momentan benutze ich aber nur einen Standard-Shader, der nichts anderes tut als die Grafikkarte normalerweise macht. Die Shader liegen im "/data/shaders/"-Verzeichnis. Wer sich mit GLSL auskennt kann ja mal selbst Shader schreiben :)
Der Shader-Support ist noch nicht komplett (z.B. fehlt die Variablen-Übergabe von der Engine zum Shader), aber es freut mich das wenigstens das endlich klappt.

Was ich jetzt vorhabe:
Partikel-System fertigstellen (da gibt es noch ein paar Dinge die noch nicht fertig sind)
Shader-Support fertigstellen (Variablenübergabe)
Licht & Schatten (wird wohl etwas länger dauern, ich muss mich erst mal in die Techniken einarbeiten, das ist alles sehr komplex)

Der Link: http://darkinsanity.netne.net/cd/cd.zip


Darkinsanity:
Ok, doppelpost, aber da ich ne neue Version habe erlaub ich mir das mal:
Als ich gerade dabei war die Lichttechnik zu implementieren bin ich auf einen kleinen Fehler gestoßen. Und das war genau der Fehler, der verursacht hat, dass kein Sound ausgegeben wird.
Zur Soundausgabe verwendet OpenAL nämlich handles (Nummern), und an einer Stelle hat ein vergessener Parameter bewirkt, das als handle 0 anstatt dem wirklichen handle zurückgegeben wird.
Ich hab den Fehler entfernt, und nun kann man einen Sound hören (die Lautstärke und Richtung ist natürlich von der Spieler-Position abhängig, das hatte ich schon seit langem eingebaut). Leider geht momentan nur Wave als Format, ich seh mal ob ich dann noch ogg vorbis nutzen kann.
Aber als erstes kümmer ich mich weiter um die Beleuchtung.

Der Downloadlink: http://darkinsanity.netne.net/cd/cd.zip

Falls jemand die Technik interessiert, die ich für das Licht einsetze:
Hier gibt es eine Demo: http://downloads.gamedev.net/features/p ... htDemo.zip
Und hier ein Tutorial: http://www.gamedev.net/reference/progra ... efault.asp

Diese Technik ist sehr effizient, in der Demo werden 400 Lichter gerendert. Zusätzlich zu dieser Technik lässt sich auch noch das OpenGL-Licht nutzen, das aber nur 8 Lichter unterstützt.

Der Shader-Support ist fertig, das mit der Physik-Engine wird wohl etwas länger dauern und nur schrittweise, da von den Umbauten alles betroffen ist, auch das Levelformat usw.
Falls das mit dem Licht gut klappt werd ich die Umbauten in Angriff nehmen.


Lucki:
darkinsanity wrote:die Lautstärke und Richtung ist natürlich von der Spieler-Position abhängig


Unterstützt das Sourround 5.1 ? (Wär toll ;-) )


Doppelpost macht natürlich gar nichts. Ist ja neue Version und du kannst nichts dafür, dass nach dir niemand geschrieben hat ^^

[hr]

Hab ich was auf den Ohrn, oder kommt da kein Sound? Muss man den vielleicht irgendwo anschalten, wie mit den Partikeln?

[hr]

Habs gefunden 'P' ist es.
Und Ja, es unterstützt Surround 5.1 *freu*

Gute Arbeit :D


Darkinsanity:
Das mit dem Surround hätte ich nicht beantworten können :)
Das hängt vom Treiber usw. ab, ich kanns auch nicht selbst testen da ich kein Surround hab :) Aber ich nehme einfach mal an das die meisten Soundkarten-Treiber alles korrekt implementiert haben, von daher sollte es eigentlich überall gehen.
Hm, ich denke ich muss das alles sogar zweimal umkrempeln. Einmal wegen der Physik-Engine, und dann nochmal, da das Programm momentan mehr Technik-Demo als eine Engine ist...
Aber das hat noch ein bisschen Zeit, zumindest bis ich das Licht fertig hab.

Und schlau wie ich bin hab ich vergessen euch zu sagen wie man den Sound anschaltet. Also, "P" startet die Soundquelle (es gibt momentan nur eine) und "L" stoppt die Soundquelle. Die Soundquelle hört aber auch auf abzuspielen wenn das Ende der Wave-Datei erreicht ist. Wenn man wieder "P" drückt dann geht die Soundquelle aber auch wieder an.

Ich bin gerade am Überlegen wie ich das am sinnvollsten in das Level-Format einbaue. Entweder ich mach das direkt rein (wäre für die Lichtquellen sinnvoll) oder ich stecke ein paar Dinge in ein Script (für Shader sinnvoll).

Es liegt also noch eine Menge Arbeit vor mir :)


Darkinsanity:
So,

schon wieder was neues. Diesmal ist ALUT (Audio-Library-Utility-Toolkit) rausgeflogen, weil es nur Wav unterstützt. Ich hab es durch OggVorbis ersetzt, was einige Vorteile hat. Zuerst einmal hat es Kompression, und im Gegensatz zu MP3 gibt es keine Lizenzprobleme da der Codec Open-Source ist. Außerdem kann ich jetzt Sound streamen, d.h. ich lade immer kleine Teile des Sounds nach anstatt alles gleich in den RAM zu laden. Das spart bei großen Sounds viel Speicher.

Bei kleinen Sounds lohnt sich das Streaming nicht, daher werde ich auch noch die Möglichkeit einbauen einen OggVorbis-Sound komplett zu laden.

Die Sirene war eigentlich nur als Test-Sound gedacht, ich hab sie gefunden als ich auf meiner Festplatte einfach nach Wave's gesucht hab. Da ich jetzt keine Wave's mehr nutze hab ich den Sirenen-Sound mit Audacity verlängert (Wiederholung klappt beim streamen noch nicht) und ins OggVorbis-Format konvertiert.

Ein paar kleine Änderungen gab es hier und da auch noch, die sind aber nicht nennenswert. In Sachen Beleuchtung bin ich einen großen Schritt weiter, aber es ist noch nicht fertig.

Der Link: http://darkinsanity.netne.net/cd/cd.zip

Bis dann


3 Posts mit Errors...


Whitefire:
Hehe da ist einer ja richtig fleißig :) Wünsche dir weiterhin viel Erfolg und hoffe alles klappt so wie du es dir wünschst! ;)

Und zu den Double Posts: Es ist nur nicht gerne gesehen wenn man nach ein paar Minuten oder wenigen Stunden nicht Gebrauch vom Edit-Button macht (wozu ist der sonst da?), aber sonst ist ein Double Post überhaupt kein Problem ;)

Also ich schließ mich Lucki an und sag weiter so! :great:


Darkinsanity:
sorry, konnte ne zeit lang nicht ins netz (hatten ferien, daheim hab ich kein gescheites internet), hab daher nicht gemerkt das diese affen meinen webspace gelöscht haben...
werd mir wohl mal wieder neuen besorgen müssen. könnte aber en weilchen dauern bis es wieder geht.

@Whitefire: thx.

/edit:
ok hab mir mal nen neuen server gemacht. vermutlich ham die den alten gelöscht weil keine html-datei drauf war, deshalb hab ich auf den neuen gleich mal eine drauf ;)

Und ich belästige das Netz gleich mal wieder mit ner neuen Version:

Leider funktioniert die Beleuchtung (und der Schatten) immer noch nicht, da sitzt wohl noch ein fieser Fehler drin.

Es hat trotzdem einige Änderungen gegeben, die ich hier mal in Kurzform aufliste:

Bugfixes:
- Ende der OggVorbis-Datei wurde nicht richtig erkannt
- Ränder an der Skybox sind nun weg
- Colorbuffer wurde unnötigerweise gelöscht (unnötig da der Hintergrund sowieso von der Skybox überdeckt wird)
- Texturen des Partikelsystems sind nun wieder richtig herum
- ein paar kleinere Bugs

sonstige Änderungen:
- restlichen Wave-Code entfernt
- Umbau zu Engine-mäßiger Form
- Config-File ist nun "thunder project\config\config.lua"
- Lua 5.1 hinzugefügt
- Config-File wird nun von Lua verarbeitet
- gameinfo-script hinzugefügt ("thunder project\gameinfo.lua")
- Anisotropische Filterung (macht die Texturen schärfer) kann nun in der Config-File aktiviert werden

Wie schon gesagt hab ich das ganze mehr in eine Engine-Form gebracht. Daher wird die Demo jetzt auch etwas anders gestartet, nämlich über die "thunder.bat". Die ruft die Engine mit dem richtigen Parameter auf.

Ich wette das nicht alle wissen was Lua ist :)
Lua ist eine leistungsfähige Skriptsprache, die in "FarCry", WoW und der Source-Engine Verwendung findet. Ich bin einfach zu faul mir meine eigene Skriptsprache auszudenken, und Lua hat ja bereits bewiesen, was es kann. Also hab ich Lua in die Engine gepackt und bisher bin ich sehr zufrieden. Wichtig bei Lua ist, das auf Groß/Kleinschreibung geachtet wird.
Ich habe auch vor, das (noch nicht vorhandene) Hauptmenü von Lua-Scripts aus zu steuern.

Jetzt kommen noch ein paar Worte über das Design:
Ich strebe einen Aufbau ähnlich der Source-Engine an. Das hat mehrere Vorteile. Zum einen kann ich so mehrere Spiele auf derselben Engine aufbauen, auch Mods wären kein Problem. Zum anderen kann ich so das Verhalten verschiedener Objekte in Skripten festlegen.
Jedes Benutzbare Item wird ein eigenes Skript spendiert bekommen. Dort werden nicht nur die Eigenschaften des Items festgelegt, sondern auch die Funktionen die dieses Item hat. Da wird also zum Beispiel festgelegt, ob man das Item aufnehmen kann, wie schwer es ist, ob es einen Sound abspielen soll wenn man es aufnimmt, welche Taste welche Funktion auslöst usw.
Die Source-Engine erledigt das auch so, die Items heißen dort "Entities".

Da ich mitlerweile einige Dinge verwende, die von anderen Personen stammen, liste ich hier alle mal auf, und schreibe auch die Aufgabe dazu:

OpenGL - Grafik
OpenAL - Soundausgabe
Newton Game Dynamics - Physik
Lua - Scripts
FreeImage - lesen und schreiben von Bildern (Texturen, Screenshots)
OggVorbis - Soundformat
FreeBASIC V0.21.0b - Der Compiler

Alles davon ist kostenlos, das meiste open-source. Nur Newton rückt den Quelltext nicht raus ;)
Der Hauptgrund, warum ich genau diese Libs verwende? Alle haben eine sinnvolle Lizenz, die es mir ermöglicht sie ohne Lizenzprobleme kostenlos einzusetzen. Deswegen verwende ich auch OggVorbis anstatt Mp3, da es wegen Mp3 in letzter Zeit schon einige Klagen gegeben hat.

Und hier kommt der (diesmal etwas andere) Link: http://darkinsanity.netii.net/xenon/xenon.zip

Momentan ist die Maussteuerung nicht so toll. Sie ist unpräzise, die Genauigkeit ist abhängig von der Bildschirmauflösung und sie nutzt den Vorteil von hochauflösenden Mäusen nicht aus.
Ich werde mich also auf die Suche nach einer besseren und plattformunabhängigen Maussteuerung machen und mich um die Beleuchtung kümmern. Also genug zu tun für die nächsten Jahre :D

So, ich hoffe mal ich hab euch nicht totgelabert :)
Bis denn


Lucki:
Ecken der skybox sind weg :thumbleft:

Partikel durch Wand sichtbar... ^^

Maussteureung bestätigter Weise sehr unpräzise hat immer 'aussetzer' (hatte mal genau so'n prob unter ubuntu... hat sich von allein verflüchtigt :x48:)


[zip Problem von The Gnaa mal weg gelassen...]

Darkinsanity:
So, die neue Version ist noch nicht fertig, aber ich will euch mal sagen woran ich gerade arbeite :)
Also, ich hatte total vergessen, einen Material-Manager zu schreiben.
Das hole ich jetzt nach. Erste Konsequenz ist, das die Viereck-Render-Routinen rausgeflogen sind, da ich sonst das doppelte an Code hätte: Einmal für Dreiecke und einmal für Vierecke.
Ein Material ist besteht aus folgendem:
- Farbe (Rot, Grün, Blau, Alpha, wenn Textur vorhanden ist wird sie eingefärbt)
- Textur
- Shader
- Liste mit allen Dreiecken, die zu diesem Material gehören

Die Zeichenroutinen sind bereits fertig, aber ich muss mir noch überlegen wie ich das in einer Datei ablege.

Wenn ich fertig bin melde ich mich wieder ;)


Darkinsanity:
Es ist vollbracht: Die nächste Demo ist fertig ;)

Es sieht nicht soo toll aus - nur ein einziges Dreieck ist dageblieben. Dafür sieht die Skybox jetzt viel besser aus, da ich jetzt höher aufgelöste Texturen verwende. Das sind aber jetzt "non-power-of-two"-Texturen, wenn es also Fehler bei jemandem gibt, dann bitte melden.
Also, was hat es mit dem Dreieck auf sich? Dieses einzelne Dreieck nutzt nun das komplexe Material-System, das ich mir ausgedacht habe, ich könnte also jetzt soviele unterschiedliche Texturen und Shader nutzen wie ich will (bzw. wie in den RAM passt).
Momentan gibt es aber noch einen Nachteil: Ich hab noch keinen neuen Map-Compiler geschrieben, deswegen muss ich die Daten "von Hand" in die Datei eintragen.

Ich werd mich also daran machen und einen neuen Map-Compiler schreiben, vielleicht seh ich mich auch mal nach einem gescheiten Editor um. Momentan dauert das ganze aber etwas länger, da momentan der "Bundeswettbewerb Informatik" (bei dem ich teilnehme) stattfindet und außerdem außer mir nur noch einer da ist der sich um das Linux-Projekt bei uns in der Schule kümmert...
Achja, ganz nebenbei hab ich auch ein paar kleinere Fehler im Skybox-Code behoben. Außerdem müsst ihr ein Stück "zurücklaufen" um das Dreieck zu sehen. Bis gestern Abend gab es auch noch einen Fehler im Dateiformat, aber das hab ich um halb elf dann noch behoben.

Ich weiß nicht, wann ich die nächste Demo fertig hab, aber wenn ich Zeit und Ideen habe arbeite ich daran :)

Aber jetzt erstmal der Link: http://darkinsanity.netii.net/xenon/xenon.zip
Die Datei ist diesmal größer, da die Texturen größer sind.

Bis denn


TheGnaa:
-.- bei mir kommt bei winrar immer die fehlermeldung "unerwartetes archivende das archiv hat entweder ein unbekanntes format oder ist beschädigt"


Whitefire:
Wollte das unzippen mal probieren, aber 7zip gibt mir auch nur eine Diagnosefehlermeldung aus... ;)



Puh... war ein bisschen an Arbeit, aber auch meine eigene Schuld... möchte mich nochmal bei dir entschuldigen darkinsanity für das Löschen deiner Topic... Wäre super wenn in Zukunft weitere Demos bis zum Release folgen :)
Coding 4 fun...
stupidi $t0, $s0, IE6 # 1 == IE6
bne $t0, $0, Apocalypse
j end;
Apocalypse:
#?:-Xx°!_'+* ...


GamerZone.info | Crashdaymaster | Linuxia
User avatar
Whitefire
Admin
Admin
 
Posts: 2348
Joined: 24.05.2007, 14:12
Location: Austria/Österreich
Highscores: 13
Gender: Male
Print view this post

Re: Was braucht ein Egoshooter alles (Thread: darkinsanity)

Postby Whitefire » 27.10.2009, 19:04

Also nochmal zur Anmerkung: Dein letzter Download ging leider nicht, das ZIP-Archiv kann nicht entpackt werden.. :(

So und jetzt verschieb ich mal das Thema nach Ego-Shooter - was jetzt ja dank GZ 2.0 möglich ist :)
Coding 4 fun...
stupidi $t0, $s0, IE6 # 1 == IE6
bne $t0, $0, Apocalypse
j end;
Apocalypse:
#?:-Xx°!_'+* ...


GamerZone.info | Crashdaymaster | Linuxia
User avatar
Whitefire
Admin
Admin
 
Posts: 2348
Joined: 24.05.2007, 14:12
Location: Austria/Österreich
Highscores: 13
Gender: Male
Print view this post

Re: Was braucht ein Egoshooter alles (Thread: darkinsanity)

Postby darkinsanity » 27.10.2009, 19:42

ist schon in Ordung, ich kanns verkraften 8)

release? Oha, bis dahin ist es noch ein weiter Weg :D
Es fehlen noch viele wichtige Dinge wie KI (pathfinding!), Physik, Story, Maps, Skripte...

Das es bei euch nicht entpacken will ist seltsam... bei mir funktioniert es ohne Probleme. Es könnte am ZIP-Format liegen, da ich immer die höchste Kompressionsstufe verwende. Ich werds das nächste mal als 7z hochladen.

Die nächste Demo ist eigentlich schon fertig, ich kann sie aber erst morgen hochladen, da ich hier nur langsames Internet habe.

An dieser Stelle auch gleich mal ein Lob an dich: Das "neue" gamerzone sieht gut aus und läd auch viel schneller :)
Traue keinem Computer, den du nicht aus dem Fenster werfen kannst -- Steve Wozniak
User avatar
darkinsanity
Gamer
Gamer
 
Posts: 28
Joined: 28.01.2008, 13:36
Location: /dev/sda1
Gender: Male
Print view this post

Re: Was braucht ein Egoshooter alles (Thread: darkinsanity)

Postby Whitefire » 27.10.2009, 20:17

Das "gut aussehen" lassen wir mal lieber bei Seite *gg* Soll nur ein Übergangsdesign sein solange das andere noch in Arbeit ist hehe ;)

Puh dann hab ich ja mal Glück gehabt das du nicht so nachtragend bist...^^
Also ich kann es einfach nicht entpacken, tut mir Leid... benutze wie 7zip, deine vorigen Archive konnte ich allerdings entpacken... ist jetzt nur dieses eine Mal.

Zu den wichtigen Dinge die fehlen gleich mal eine Frage, hast du schon einen Plan wie du deine KI "denkfähig" machst? Nach welchem Schema die so ca. vorgehen werden? Denke mal das wird nicht so eine einfache Geschichte sein?^^

Wünsche dir auf jeden Fall weiterhin viel Erfolg :)
Coding 4 fun...
stupidi $t0, $s0, IE6 # 1 == IE6
bne $t0, $0, Apocalypse
j end;
Apocalypse:
#?:-Xx°!_'+* ...


GamerZone.info | Crashdaymaster | Linuxia
User avatar
Whitefire
Admin
Admin
 
Posts: 2348
Joined: 24.05.2007, 14:12
Location: Austria/Österreich
Highscores: 13
Gender: Male
Print view this post

Re: Was braucht ein Egoshooter alles (Thread: darkinsanity)

Postby darkinsanity » 28.10.2009, 19:25

Also ich finde das Design ganz gut :)
Naja, die Buttons (zitieren, antworten usw) passen noch nicht so ganz dazu, aber sonst gefällts mir eigentlich :)

Das mit der KI wird wirklich nicht einfach, einen Plan hab ich auch noch nicht. Ich hab mich bisher nur allgemein ein bisschen darüber informiert, mal ein wenig über Pathfinding erkundigt - ist aber noch nichts dabei herausgekommen.

Und zu dem Entpack-Problem: Es gab da offenbar einen Fehler beim uploaden, den ich aber nicht bemerkt habe, da die Datei die richtige Größe hatte. Aber naja, wenn ihr es hättet entpacken können, wäre es warscheinlich nicht gelaufen - wegen einem Bug beim Speicher reservieren.

Die neue Version hab ich hochgeladen und zum Test nochmal heruntergeladen, entpackt und ausprobiert - es sollte also diesmal alles in Ordnung sein :)
Hier die Änderungen der neusten Version:

Das Map-Format wurde um ein 4-Byte großes Feld pro Material erweitert, darin werden dann später bestimmte Eigenschaften des Materials festgehalten (z.B. ob sich die Textur bei Koordinaten > 1 wiederholen soll). Wird momentan zwar nicht genutzt, aber so hab ich ein wenig Platz für Erweiterungen.

Wie oben schon erwähnt gab es einen Bug beim reservieren des Speichers für die Material-Struktur: Ich habe den Speicher reserviert ohne in vorher zu löschen (mit Nullen überschreiben). Windows 7 löscht den Speicher, den man reserviert, offenbar automatisch, daher ist es mir zuerst nicht aufgefallen. Unter Windows XP wird der Speicher aber nicht gelöscht, was dazu führt das ungültige Werte drinstehen. Und wenn ich die dann an den Grafikkarten-Treiber übergebe, dann krachts gewaltig.
Den Fehler hab ich erst gefunden, als ich in den Ferien aus verschiedenen Gründen wieder auf XP umgestiegen bin, der Fehler ist jetzt aber beseitigt, denn ich verwende nun eine andere Funktion zur Speicherreservierung, die den Speicher unter jedem Betriebssystem automatisch löscht.

Ich hab mich mitlerweile auch um eine neue Maussteuerung gekümmert, die neue basiert jetzt darauf, das das Betriebssystem eine Nachricht an das Programm schickt, wenn die Maus bewegt wurde. Während die Grafikkarte dann das Bild rendert, werden alle Nachrichten vom Betriebssystem abgeholt und die Kamera entsprechend bewegt.

Einen Nachteil hat das ganze momentan leider: Vorher konnte ich die Maus immer wieder in die Mitte des Fensters setzen (so das sie das Fenster nicht verlässt, egal wie weit man sie bewegt), das erlaubt mir das Betriebsystem momentan nicht mehr. Alles was geht ist, das die Maus im Fenster "gefangen" ist, es also nicht verlassen kann. Blöderweise ist jetzt also die Bewegung nach links/rechts und oben/unten beschränkt, was keine typische Shooter-Steuerung mehr ergibt. Dafür muss ich jetzt auch erstmal wieder eine Lösung finden...
Vielleicht lässt sich irgendwo herausfinden, wie dir "großen" Spiele wie Half-Life 2 das machen.

Es sind auch zwei neue Logfiles dazugekommen, in denen die Extensions der Soundkarte (EAX und ähnliches) gespeichert werden. Später werde ich noch die Möglichkeit einbauen, das man genau auswählen kann, an welches "Gerät" OpenAL die Sound-Daten schickt. Damit kann man dann auch hardwarebeschleunigte Features von Creative-Soundkarten und nVidia nForce-Chipsätzen ausnutzen.

Am Licht/Schatten-System hab ich auch wieder geschraubt, allerdings hab ich den wirklichen Fehler noch nicht gefunden, es funktioniert also leider immer noch nicht.

Ansonsten gabs wieder jede Menge kleinerer Verbesserungen.

Der Link, diesmal ein 7z-Archiv: http://darkinsanity.netii.net/xenon/xenon.7z

Momentane Baustellen sind also: Maussteuerung, eine gescheite Möglichkeit Maps zu erstellen und das Licht/Schatten-System.

btw hab grad mal nachgesehen wieviele Zeilen Code ich bisher selbst geschrieben hab: 2148 Zeilen! Und es fehlt noch jede Menge ;)

Also, bis denn :)
Traue keinem Computer, den du nicht aus dem Fenster werfen kannst -- Steve Wozniak
User avatar
darkinsanity
Gamer
Gamer
 
Posts: 28
Joined: 28.01.2008, 13:36
Location: /dev/sda1
Gender: Male
Print view this post

Re: Was braucht ein Egoshooter alles (Thread: darkinsanity)

Postby Lucki » 08.11.2009, 16:28

Die Mausintensität und -bewegungen sind zwar insgesamt besser, jedoch wird nach einer Weile die Maus 'gefangen', wie du schon richtig erkannt hast...
Zu Half-Live 2: Kannst dich ja bei Valve bewerben, die suchen im Moment Leute ;) ... kannst ihnen dann ihre Geheimnisse klauen xD

Darkinsanity = Auf dem richtigen Weg :D
Image
ImageImage
Zäpfchen sind echt für'n Arsch -.-
User avatar
Lucki
Moderator
Moderator
 
Posts: 319
Joined: 22.09.2007, 12:26
Location: Deutschland / Niedersachsen
Highscores: 7
Gender: Male
Print view this post

Re: Was braucht ein Egoshooter alles (Thread: darkinsanity)

Postby darkinsanity » 18.11.2009, 11:41

Naja, ich glaube die fänden das nicht so lustig ;)
Und die suchen Leute die Erfahrung mit C++ haben, und ich hasse C++ :)
Aber an der Maussteuerung arbeite ich jetzt wieder (war letzte Woche mit der Schule in Berlin).
Traue keinem Computer, den du nicht aus dem Fenster werfen kannst -- Steve Wozniak
User avatar
darkinsanity
Gamer
Gamer
 
Posts: 28
Joined: 28.01.2008, 13:36
Location: /dev/sda1
Gender: Male
Print view this post

Re: Was braucht ein Egoshooter alles (Thread: darkinsanity)

Postby darkinsanity » 11.12.2009, 13:33

So,
ich hab mal wieder ein paar Dinge verbessert:
- Die Skybox-Daten sind nicht mehr fest einprogrammiert, sondern stehen nun in den Map-Files
- Der Dateiname der ersten Map ist nicht mehr fest einprogrammiert, sondern wird von der "startmap"-Variable im "/thunder project/gameinfo.lua"-Skript festgelegt
- nicht mehr benötigte Header & Bibliotheken entfernt
- einige Funktionen entfernt, die von OpenGL übernommen werden können
- veraltete Render-Funktionen und Datentypen entfernt
- Vorbereitungen getroffen, um bald auch die Sound-Angaben in Map-Files auslagern zu können
- Kamera-Funktionen zur besseren Übersichtlichkeit in eigenen Header ausgelagert
- überflüssige Variablen entfernt
- einige Namensfehler bei Funktionen entfernt
- Die Sound-Daten sind nicht mehr fest einprogrammiert, sondern stehen nun in den Map-Files
- gut versteckten Soundbug entfernt
- Sounds werden nun wiederholt
- Skybox ausgetauscht

Wie man sehen kann, sorgen die Änderungen eher für eine bessere Struktur und mehr Übersichtlichkeit. Darauf lege ich Wert, vor allem da mir die mangelnde Übersichtlichkeit beim Vorgängerprojekt zum Verhängnis wurde :)

Die erste sichtbare Veränderung ist der ausgetauschte Splashscreen. Der alte gefiel mir nicht wirklich, daher hab ich mal einen neuen erstellt, das grünliche Leuchten ist schon deutlich mehr nach meinem Geschmack. Die Schriftart könnte vielleicht sogar dem einen oder anderen bekannt vorkommen, das ist nämlich die Schriftart "Ethnocentric", mit der auch der Schriftzug des Spiels "Thandor" gemacht wurde.
Die Skybox ist nun eine schneebedeckte Landschaft, mir wurde die alte Skybox langweilig. Da die Dateigröße der neuen Skybox-Texturen kleine ist, ist jetzt auch das Archiv fast um ein MB kleiner geworden.

Was irgendwann auch noch kommen wird, ist der einbau des Video-Codecs "Theora" und des Sprach-Codecs "Speex", damit ich irgendwann auch Videos abspielen und Voice-Chat nutzen kann. Das wird aber wahrscheinlich noch etwas länger auf sich warten lassen, denn bisher ist es mir gerade mal gelungen, die erfordelichen Bibliotheken zu kompilieren, benutzt hab ich die noch nie. Ein wichtiger Schritt wird auch die Überführung in ein Client/Server-Modell sein, da dass aber sehr komplex sein wird, werde ich damit noch etwas warten. Fest steht aber, dass das irgendwann gemacht werden muss, denn dadurch wird Multiplayer-Unterstützung erst vernünftig möglich, und auch das einbinden von Bots wird dann darüber laufen.

Womit ich auch schon wieder beim nächsten Thema wäre: KI. Bisher hab ich noch nicht genügend Ahnung und die nötigen Vorraussetzungen, um jetzt gleich Bots einzufügen, aber ich hab mich mal noch etwas über 3D-Pathfinding informiert (ich hab da so ein PDF auf meiner Festplatte gefunden, da werden einige Techniken erklärt). Am besten wäre es, wenn ich mal ein SDK von einer einfach zu bedienenden Engine hätte und damit etwas rumprobieren könnte, aber etwas passendes habe ich noch nicht gefunden.
Bisher weiß ich auch nicht, wie das dann mit dem Zielen der Bots wird, schon das überlegen einer gescheiten Pathfinding-Methode (und wie ich sie umsetze) bereitet mir einiges Kopfzerbrechen.

Eigentlich wollte ich auch die Physik schon längst drin haben, aber leider ist daraus auch nichts geworden. Erstens verarbeite ich momentan im Map-Format die Dreiecke einzeln (und nicht als fertige Objekte wie z.B. ein Würfel oder eine Kugel) und zweitens benutze ich ja VBOs zum rendern, d.h. ich lade die ganzen Daten auf die Grafikkarte und rendere mit nur zwei Befehlen. Beides ist in Kombination mit der Physik-Engine sehr schlecht, denn die will das ich Objekte nutze und das ich die Dreiecksdaten schön einzeln übergebe (was das größere Problem darstellt).

Zum Schluss das Unangenehme: Die Maussteuerung lässt sich leider nicht verbessern. Würde ich mein Fenster usw. selbst erzeugen (was echt kompliziert ist), könnte ich von Windows das alles so machen lassen, da ich aber momentan noch die fbgfx2-Library nutze, geht das nicht. Tut mir echt leid, aber eine bessere Steuerung gibt es dann wohl erst, wenn die fbgfx2 rausfliegt, und das geht erst wenn ich den OpenGL 3 Basecode am laufen hab.

Hier der Link zur Demo:
http://darkinsanity.netii.net/xenon/xenon.7z

bis denn
Traue keinem Computer, den du nicht aus dem Fenster werfen kannst -- Steve Wozniak
User avatar
darkinsanity
Gamer
Gamer
 
Posts: 28
Joined: 28.01.2008, 13:36
Location: /dev/sda1
Gender: Male
Print view this post

Re: Was braucht ein Egoshooter alles (Thread: darkinsanity)

Postby Lucki » 11.12.2009, 14:12

:D von den meisten änderungen bekommt man ja net soviel mit
zur KI: Hier gibt es ein kostenloses Spiel zum weiterprogrammieren (C#), welches sich mit dem richtigen suchen und verteidigen eines Ameisenvolkes beschäftigt. (also eine KI) Schau dich einfach um ;)
Image
ImageImage
Zäpfchen sind echt für'n Arsch -.-
User avatar
Lucki
Moderator
Moderator
 
Posts: 319
Joined: 22.09.2007, 12:26
Location: Deutschland / Niedersachsen
Highscores: 7
Gender: Male
Print view this post

Re: Was braucht ein Egoshooter alles (Thread: darkinsanity)

Postby darkinsanity » 15.12.2009, 12:29

Ja, leider sieht man nicht viel davon. Momentan ist es noch mehr Arbeit am "Unterbau", damit dann die grafischen Sachen usw. funktionieren. In Sachen Leveleditor überlege ich mir gerade, wie der Aussehen soll (ich hab mir mal den FarCry 2 Editor angesehen und Demon hat mir den Hammer-Editor aus dem Source-SDK gezeigt). Und ich hab auch zwei Konstanten eingefügt, damit man im Map-Format dann auch Props und Skripte (für Skriptgesteuerte Ereignisse) einbinden kann.
Sobald OpenGL 3 drin ist und ich einen einigermaßen guten Map-Editor hab, wird es dann auch "sichtbare" Änderungen geben :)
Traue keinem Computer, den du nicht aus dem Fenster werfen kannst -- Steve Wozniak
User avatar
darkinsanity
Gamer
Gamer
 
Posts: 28
Joined: 28.01.2008, 13:36
Location: /dev/sda1
Gender: Male
Print view this post

Re: Was braucht ein Egoshooter alles (Thread: darkinsanity)

Postby darkinsanity » 18.12.2009, 15:07

So, ich melde mich noch ein letztes mal, bevor Weihnachtsferien sind und ich mich aufgrund einer extrem langsamen und manchmal nicht funktionierenden Internetverbindung nicht mehr melden kann.

Also, ich habe gerade angefangen, eine kleine Physik-Lib zu schreiben, da die Newton-Lib einfach nicht passt. Ursprünglich wollte ich das ganze mit OpenCL machen (damit kann der User auswählen, ob die Berechnungen auf der CPU oder der GraKa stattfinden sollen), aber die GraKa-Hersteller haben keine funktionierenden Treiber. Daher mach ich das ganze noch in FreeBASIC.
Das ganze soll erst einmal nur "Rigid-Body-Dynamics" beinhalten, also die "Physik starrer Körper". Also sowas wie Kollisionen und Gravitation.

Damit enthält meine Todo-Liste jetzt folgendes:
OpenGL 3 Basecode fertig schreiben
Neue Maussteuerung
Physik-Lib fertigschreiben und einbauen
Level-Editor anfangen zu schreiben (und mal ein gescheites Testlevel basteln)
Nochmal das Beleuchtungssystem überarbeiten

Mal sehen, was davon ich umsetzen kann ;)

Und jetzt wünsche ich frohe Weihnachten und einen guten Rutsch. Bis nächstes Jahr :)
Traue keinem Computer, den du nicht aus dem Fenster werfen kannst -- Steve Wozniak
User avatar
darkinsanity
Gamer
Gamer
 
Posts: 28
Joined: 28.01.2008, 13:36
Location: /dev/sda1
Gender: Male
Print view this post

Re: Was braucht ein Egoshooter alles (Thread: darkinsanity)

Postby darkinsanity » 02.02.2010, 11:34

So, ich melde mich mal wieder, auch wenn die neue Demo noch nicht fertig ist :)

Leider gibt es erstmal schlechte Nachrichten, das mit der Physik-Lib ist nichts geworden. Die physikalischen Gesetze sind ja nicht das Problem, aber vor allem die Berechnung, wie und wo zwei Objekte kollidieren ist mehr als kompliziert.

Am Sonntag hab ich noch etwas am Skybox-Code gebastelt und eine komplett neue Render-Routine dafür geschrieben, die ich aber so nicht einsetzen kann. Dabei werden nämlich alle Skybox-Texturen in eine Textur gepackt, damit ich alles über ein VBO zeichnen kann (bisher geht das über eine DisplayListe, die sind aber eigentlich veraltet, auch wenn sie schnell sind). Da es aber 6 Texturen sind kommen da ziemlich krumme Texturkoordinaten raus, und wegen der Ungenauigkeit sieht man dann wieder Ränder an der Skybox.

Ich habe aber bereits angefangen, an einem Server zu schreiben, und über die Skripte denke ich auch gerade nach. Es geht also noch vorwärts, wenn auch sehr langsam ;)
Traue keinem Computer, den du nicht aus dem Fenster werfen kannst -- Steve Wozniak
User avatar
darkinsanity
Gamer
Gamer
 
Posts: 28
Joined: 28.01.2008, 13:36
Location: /dev/sda1
Gender: Male
Print view this post

Re: Was braucht ein Egoshooter alles (Thread: darkinsanity)

Postby Whitefire » 13.02.2010, 20:42

Ich drück dir die Daumen, bin gespannt was da noch so alles rauskommen wird :)
Coding 4 fun...
stupidi $t0, $s0, IE6 # 1 == IE6
bne $t0, $0, Apocalypse
j end;
Apocalypse:
#?:-Xx°!_'+* ...


GamerZone.info | Crashdaymaster | Linuxia
User avatar
Whitefire
Admin
Admin
 
Posts: 2348
Joined: 24.05.2007, 14:12
Location: Austria/Österreich
Highscores: 13
Gender: Male
Print view this post

Re: Was braucht ein Egoshooter alles (Thread: darkinsanity)

Postby darkinsanity » 22.02.2010, 15:42

So, diesmal hab ich leider nur eine leicht verbesserte Version im Angebot.
Es gab eigentlich nur interne Verbesserungen, ich hab die OggVorbis-Bibliotheken aktualisiert (die sind jetzt auch kleiner), die Skybox ausgetauscht, und die Texturen/Sounds sind jetzt nach maps geordnet, d.h. die Skybox-Texturen liegen jetzt zum Beispiel in "/thunder project/textures/testmap/skybox".
Der Server ist noch in Arbeit, bevor ich den fertig schreiben kann, brauch ich aber erstmal die Möglichkeit dem User eine grafische Benutzeroberfläche zum konfigurieren und Server wählen usw. anzubieten. Daran hab ich schon gearbeitet, die Erzeugung von Fenstern, Buttons usw. geht schon, aber ich muss die Möglichkeit auf Mausklicks zu reagieren noch einbauen, und die Elemente sind bisher nur einfarbig, eine Textur wäre wohl ganz nett.
Da die grafische Oberfläche auch Text ausgeben muss, hab ich eine kleine Bibliothek geschrieben, die es mir ermöglicht unter OpenGL Text in einer bestimmten Schriftart auszugeben. War ein bisschen trickreich, aber es funktioniert.
Das ganze braucht nur noch ein bisschen Feinschliff und muss in die Engine integriert werden, an einem Skript-interface hab ich auch schon gebastelt, das Hauptmenü soll nämlich dann vom Skript erzeugt werden.

Gestern Abend gelang mir ein weiterer Fortschritt: Ich habe es geschafft, ohne die Grafik-Bibliothek von FreeBASIC unter Windows selbst ein OpenGL-Fenster zu erzeugen. Da ich nun direkt mit der WinAPI arbeite, könnte die verbesserte Maussteuerung nun doch früher kommen als geplant. Die Umstellung auf eigene Funktionen erfordert aber auf jeden Fall noch etwas Zeit, da ich das noch sehr ausbauen muss, z.B. ist das empfangen von Eingaben noch nicht wirklich möglich. Außerdem möchte ich auch OpenGL-Fenster unter Linux erzeugen, meine Engine soll ja auch Linux-kompatibel sein.
Eine bequeme Nebenwirkung hat das ganze auch: Sobald mein restlicher Code OpenGL 3 fähig ist, kann ich mit meinem Code auch relativ einfach ein OpenGL 3 Fenster erzeugen. Ich hoffe aber, das sich in Sachen OpenGL möglichst bald noch etwas tut, denn bisher muss man zuerst ein OpenGL 2 Fenster erstellen, um ein OpenGL 3 Fenster erstellen zu können. Das ist nicht wirklich schwer, aber im Code extrem hässlich und nicht sonderlich schnell.
Mit OpenGL 3 wird das aber wohl so schnell nichts, denn dafür müsste ich den Skybox-Code ändern und das Partikelsystem müsste komplett raus. Aber dafür wäre mit OpenGL 3 ein Partikelsystem möglich, das komplett auf der Grafikkarte läuft und daher viel schneller ist.

Die nächste Version wird allso wahrscheinlich wieder größere Änderungen bringen, was genau ich aber ändern kann und für was ich nocht etwas Zeit brauche, weiß ich noch nicht :)

Link ist wieder: http://darkinsanity.netii.net/xenon/xenon.7z

@Whitefire: Naja, es wird vor allem alles noch einige Zeit brauchen^^

bis denn
Traue keinem Computer, den du nicht aus dem Fenster werfen kannst -- Steve Wozniak
User avatar
darkinsanity
Gamer
Gamer
 
Posts: 28
Joined: 28.01.2008, 13:36
Location: /dev/sda1
Gender: Male
Print view this post

Re: Was braucht ein Egoshooter alles (Thread: darkinsanity)

Postby darkinsanity » 23.02.2010, 12:27

Hi,
ok, die nächste Demo kommt nun doch sehr viel schneller als erwartet ^^
Es ist aber wieder nur eine kleine Änderung, aber ich bin so begeistert das es bis jetzt funktioniert, dass ich es euch zeigen muss. Ich hab nämlich das GUI-system nun zusammen mit der Schrift-Bibliothek in meine Engine eingebaut. Bis auf drei kleine Problem (eine Matrix wurde versehentlich falsch berechnet, Texturen wurden versehentlich abgeschaltet und die Auflösung falsch erkannt) lief das problemlos.
Nach dem Start sieht man nun rechts unten ein graues, transparentes Rechteck, da drin ein kleineres Rechteck das die Buchstaben "TX" enhält. Das große Rechteck ist ein Fenster, das kleine ist ein Button und "TX" ist die Buttonaufschrift. Das ganze ist im moment noch sinnlos, denn der Button funktioniert so noch nicht, aber ich bin echt froh das das mit der Transparenz usw. diesmal ohne große Probleme funktioniert hat. Texturiert und mit "Feintuning" wird das ganze dann natürlich auch noch ein ganzes Stück besser aussehen.
Das ganze ist im Moment nur ein grober Test, das Fenster wird direkt im Engine-Code erzeugt und noch nicht über Scripts. Aber das kommt alles noch...

Noch eine kleine Notiz nebenbei: Ein User aus dem DelphiGL-Forum hat einen in C++ geschriebenen Code, der sich um "deferred shading" (Schatten/Beleuchtung) kümmert, nach Delphi portiert. Ich hab mir das mal durchgesehen, und schon einiges bemerkt, was ich damals falsch gemacht habe (falsche Werte bei der Buffer-Erstellung übergeben und solche Dummheiten). Wenn ich also dann wieder Zeit und Lust habe, könnte es auch mit den Schatten vielleicht was werden.
Ich will aber auf keinen Fall zuviel versprechen, ich weiß ja noch nicht, wieviele Fallen noch auf mich lauern. Aber ich gebe mein Bestes :)
Nur so nebenbei, momentan umfasst die Engine 2803 Zeilen Code ^^

Ohne weitere Worte nun wieder der Link: http://darkinsanity.netii.net/xenon/xenon.7z

Achja, noch etwas: Falls es euch interessiert, was man mit OpenGL so alles anstellen kann, solltet ihr euch unbedingt mal "Gael" ansehen. Das ist eine 3D-Engine, die ein anderer User aus dem DelphiGL-Forum schreibt. Hier mal der Link: http://gael.godlikesoft.de/downloads/

bis denn
Traue keinem Computer, den du nicht aus dem Fenster werfen kannst -- Steve Wozniak
User avatar
darkinsanity
Gamer
Gamer
 
Posts: 28
Joined: 28.01.2008, 13:36
Location: /dev/sda1
Gender: Male
Print view this post

Re: Was braucht ein Egoshooter alles (Thread: darkinsanity)

Postby Razor » 23.02.2010, 14:10

bei mir geht das game nicht wenn ich versuche es zu starten öffnet sich nix nur im task manager unter prozeese sieht man es ist was offn
Das Leben ist doch doof! Aber die Grafik ist Geil!!! :D
http://www.youtube.com/user/ExtremeGamer2009 meine you tube videos!
Image
Image
User avatar
Razor
ProGamer
ProGamer
 
Posts: 80
Joined: 27.12.2009, 00:59
Highscores: 8
Gender: Male
Print view this post

Re: Was braucht ein Egoshooter alles (Thread: darkinsanity)

Postby darkinsanity » 26.02.2010, 13:01

Dann hast du vermutlich einfach die "xenon.exe" gestartet? Das ist nämlich nur die Engine selbst, um das ganze zu starten musst du die "thunder.bat" ausführen. Die ruft die Engine dann mit dem "-game" Parameter auf, damit die Engine weiß welches Spiel sie starten soll. Es soll ja später möglich sein, mit derselben Engine mehrere Spiele zu erstellen, daher das ganze.
Traue keinem Computer, den du nicht aus dem Fenster werfen kannst -- Steve Wozniak
User avatar
darkinsanity
Gamer
Gamer
 
Posts: 28
Joined: 28.01.2008, 13:36
Location: /dev/sda1
Gender: Male
Print view this post

Re: Was braucht ein Egoshooter alles (Thread: darkinsanity)

Postby Razor » 26.02.2010, 16:56

also habs no probiert hab darüber nun gesartet gab error fehlt ne dll datei die ich im internet gefunden hab und gezogn hab dann fehlte noch ne datei die ich auch googelte und fand zum download und nun gings aber viel is bisjetzt nicht da da sind ja 3 bilder die ich im ordner fand diese 3 bilder kann ich mit der maus ankucken wenn ich sie hin und her bewege ... meine meinung wenn es erst soweit is dauerts sicher noch 10 jahre bis es fertig ist :D
Das Leben ist doch doof! Aber die Grafik ist Geil!!! :D
http://www.youtube.com/user/ExtremeGamer2009 meine you tube videos!
Image
Image
User avatar
Razor
ProGamer
ProGamer
 
Posts: 80
Joined: 27.12.2009, 00:59
Highscores: 8
Gender: Male
Print view this post

Re: Was braucht ein Egoshooter alles (Thread: darkinsanity)

Postby darkinsanity » 09.03.2010, 16:04

Wie ich weiter oben bereits gesagt habe, wird OpenAL benötigt (openal.org).
Wenn sonst noch eine DLL fehlt, wird das wohl an deinem System liegen. Aber meinst du nicht, das es für mich einfacher wäre, wenn du mir einfach sagst, WELCHE Datei fehlt?
Außerdem sind das nicht drei Bilder, ein Würfel (und damit auch die Skybox) hat nämlich bekanntlich sechs Seiten. Und wie gesagt hab ich als Leveldesigner nix drauf, sondern ich programmiere an der Engine. Und da ich das ganze alleine in meiner Freizeit mache, und auch kein Ex-valve-Programmierer bin, dauert das eben ne Weile.

/edit: Hab grad von nem Kumpel den Hinweis bekommen, das die "freetype6.dll" und die "zlib1.dll" fehlen. Ich habs nicht bemerkt, da ich das Gtk+ SDK installiert hab und die Dateien da mitgeliefert werden. Kann sie leider grad nicht uploaden, da mein USB-Stick mitsamt FTP-Zugangsdaten flöten gegangen ist.
Traue keinem Computer, den du nicht aus dem Fenster werfen kannst -- Steve Wozniak
User avatar
darkinsanity
Gamer
Gamer
 
Posts: 28
Joined: 28.01.2008, 13:36
Location: /dev/sda1
Gender: Male
Print view this post

Re: Was braucht ein Egoshooter alles (Thread: darkinsanity)

Postby darkinsanity » 28.04.2010, 22:02

So, ich hab mich schon viel zu lange nicht mehr gemeldet.
Eigentlich hatte ich geplant, jetzt schon einen funktionierenden Multiplayer-Server zu zeigen (richtiges Multiplayer wäre trotzdem noch nicht möglich gewesen), aber seit ich gescheites Internet habe haben mich ehrlich gesagt "Modern Warfare 2" und andere Dinge etwas in ihren Bann gezogen. Jetzt gehts auch wieder mit Klausuren los, das wird eine wahre Freude.

Trotzdem möchte ich euch natürlich mitteilen, was sich seit dem letzten Update so getan hat. Da es schon einige Punkte sind, mach ich das mal wieder in Stichpunkten:
- GUI-Erzeugung nun in Skripte ausgelagert
- Einige Funktionen zum setzen von Eigenschaften für alle Widgets (Position, Größe)
- in der Map-Datei kann nun ein startup-script festgelegt werden
- Code für einzelne Widget-Typen in eigene Code-Dateien ausgelagert
- Bewegungsgeschwindigkeit in Skript ausgelagert
- Variable für Spielernamen angelegt und per Skript festlegbar gemacht
- exec-Befehl eingebaut: Skripte können nun andere Skripte aufrufen (Endlosschleifen werden nicht empfohlen^^)
- Möglichkeit eingefügt, einem GUI-Fenster eine Hintergrund-Textur zu geben
- Fenster-Optionen (flags) für Skripte steuerbar gemacht (z.B. ob das Fenster sichtbar ist)
- Skripte können flags auch abfragen (GUI_getWindowFlags)
- Update der FreeImage-Bibliothek
- Aufbau eines Voice-Packets festgelegt
- Buffer-Größe für Sounds erhöht, damit weniger nachgeladen werden muss
- Physik-Engine führt nun ein Update pro frame aus (Physik wird noch nicht genutzt)

Zur Demonstration wird in der Demo ein Fullscreen-GUI-Fenster gezeichnet, die Hintergrundtextur davon ist der Splashscreen.
Diesmal sollten auch alle benötigten DLLs dabei sein, sollte trotzdem eine fehlen, bitte bescheid sagen.

Der Link ist wie immer: http://darkinsanity.netii.net/xenon/xenon.7z

So, das wars auch schon. Bis denn ;)
Traue keinem Computer, den du nicht aus dem Fenster werfen kannst -- Steve Wozniak
User avatar
darkinsanity
Gamer
Gamer
 
Posts: 28
Joined: 28.01.2008, 13:36
Location: /dev/sda1
Gender: Male
Print view this post

Re: Was braucht ein Egoshooter alles (Thread: darkinsanity)

Postby TheGnaa » 29.04.2010, 14:04

is es gewollt das man sich die ganze zeit links rum dreht?
Gott beschütze mich vor hässlichen Frauen und französischen Autos!!!!


Prison Break die geilste Serie aller Zeiten geht zuende
Image
R.I.P

Wer denkt Sex wäre das geilste auf der Welt, der war noch nie richtig kacken!!
User avatar
TheGnaa
Moderator
Moderator
 
Posts: 407
Joined: 15.02.2008, 20:53
Location: Germany/NIE/Stade
Gender: None specified
Print view this post

Re: Was braucht ein Egoshooter alles (Thread: darkinsanity)

Postby Demon » 29.04.2010, 17:43

anscheinend nicht, denn bei mir kann man sich ganz norm mit Pfeiltaste und WASD bewegen
Image
User avatar
Demon
SuperModerator
SuperModerator
 
Posts: 1084
Joined: 29.07.2007, 00:31
Location: Südhessen/Deutschland
Gender: Male
Print view this post

Re: Was braucht ein Egoshooter alles (Thread: darkinsanity)

Postby TheGnaa » 29.04.2010, 18:18

komisch jetzt gehts xDD
Gott beschütze mich vor hässlichen Frauen und französischen Autos!!!!


Prison Break die geilste Serie aller Zeiten geht zuende
Image
R.I.P

Wer denkt Sex wäre das geilste auf der Welt, der war noch nie richtig kacken!!
User avatar
TheGnaa
Moderator
Moderator
 
Posts: 407
Joined: 15.02.2008, 20:53
Location: Germany/NIE/Stade
Gender: None specified
Print view this post

Re: Was braucht ein Egoshooter alles (Thread: darkinsanity)

Postby Razor » 30.04.2010, 17:54

man kann sich bewegen geht bei mir nit kann auch nur nach links und rechts kucken
Das Leben ist doch doof! Aber die Grafik ist Geil!!! :D
http://www.youtube.com/user/ExtremeGamer2009 meine you tube videos!
Image
Image
User avatar
Razor
ProGamer
ProGamer
 
Posts: 80
Joined: 27.12.2009, 00:59
Highscores: 8
Gender: Male
Print view this post

Re: Was braucht ein Egoshooter alles (Thread: darkinsanity)

Postby darkinsanity » 30.04.2010, 18:56

Du solltest dich eigentlich bewegen können (WASD). Wenn du nach vorne gehst, wirst du nicht sehen das du dich bewegst, da du die ganze Zeit nur auf die Skybox guckst, und die ist statisch ;) Es gibt bisher nur das Dreieck in dem du am Anfang drin stehst. Wenn du nach hinten gehst, siehst du es.
Traue keinem Computer, den du nicht aus dem Fenster werfen kannst -- Steve Wozniak
User avatar
darkinsanity
Gamer
Gamer
 
Posts: 28
Joined: 28.01.2008, 13:36
Location: /dev/sda1
Gender: Male
Print view this post

Re: Was braucht ein Egoshooter alles (Thread: darkinsanity)

Postby darkinsanity » 02.08.2010, 18:12

So, nachdem es schon seit über drei Monaten keinen neuen Post von mir hier gab, hab ich mir gedacht, dass ich mich vielleicht mal wieder melden sollte.
Eins vorweg: Eine neue Version hab ich leider nicht für euch.
Die Arbeit an der 3D-Engine hat in letzter Zeit nahezu gestanden, schuld daran sind nicht die Killerspiele, sondern Multiplayer-Spiele (da ich ja seit einiger Zeit vernünftiges Internet habe) und meine Faulheit ;)
Doch jetzt genug Ausreden, ich habe vor ein paar Tagen wieder "ernsthaft" begonnen an der 3D-Engine zu arbeiten. Zuerst hab ich meine ToDo-Liste angeschaut, und hab gemerkt, dass ich einige Patzer im Aufbau der Engine gemacht habe, so dass sich einige meiner Ideen nicht umsetzen ließen.
Also hab ich mich hingesetzt und angefangen, die Engine zu "erneuern", d.h. ich schreibe eigentich den Hauptteil der Engine neu. Da der bisherige Code schon funktionierte, muss ich nicht alles neu schreiben, ich bring lediglich alles in eine geordnetere Form.
Bei der Gelegenheit will ich auch gleich ein paar Dinge meiner ToDo-Liste umsetzen, z.B. Multiplayer. Der Großteil der Skripte wird dann auch auf dem Server ausgeführt und nicht mehr auf dem Client, sonst könnte ja jeder einfach seine lokalen Skripte editieren und hätte einen Vorteil ;)
Ein bisschen Kopfzerbrechen bereitet mir noch das synchonisieren von Variablen, d.h. der Server und der Client haben jeweils eine Variable für Gravitation, und die muss sich auch auf dem Client ändern, wenn der Server sie ändert ;)

Beim Problem mit der Maus hab ich zwar mehr über das Problem erfahren, konnte aber bisher nichts ändern. Das Problem ist, das ich nicht die Mausbewegung bekomme, sondern die Cursorbewegung, d.h. wenn der Cursor am Bildschirmrand ist, kann er nicht weiter, und meine Engine kriegt keine Bewegung mehr mitgeteilt. Ich wüsste zwar, wie man die Mausbewegung (unter Windows) herausbekommt, das muss jedoch in der gfxlib von FreeBASIC geschehen. Ich versuche mal herauszufinden, ob ich ein Stück Code zur gfxlib beitragen kann.

Erwartet jetzt nicht, dass gleich morgen die fertige nächste Version kommt. Aber vielleicht bald ;)
Traue keinem Computer, den du nicht aus dem Fenster werfen kannst -- Steve Wozniak
User avatar
darkinsanity
Gamer
Gamer
 
Posts: 28
Joined: 28.01.2008, 13:36
Location: /dev/sda1
Gender: Male
Print view this post




Return to Ego-Shooter allgemein (Deutsch)



Who is online

Users browsing this forum: No registered users and 1 guest