[Projekt] Marble Insanity HD

Mit blabla_fix2_mrfreeman geht es, bis auf den Start(siehe Anhang).
Mein OS ist Windows 7 Ultimte x64, und notgedrungen nutze ich statt meiner HD 6970 die alte HD 4870.(Die Pumpe war defekt, und ich wollte den WaKühler nicht nocheinmal de- und aufmontieren.)


MfG
fac3l3ss
 

Anhänge

  • MarbleInsanityHD 2012-01-31 22-08-54-34.png
    MarbleInsanityHD 2012-01-31 22-08-54-34.png
    919,5 KB · Aufrufe: 94
  • MarbleInsanityHD 2012-01-31 22-10-50-63.png
    MarbleInsanityHD 2012-01-31 22-10-50-63.png
    942,6 KB · Aufrufe: 150
Mit blabla_fix2_mrfreeman geht es, bis auf den Start(siehe Anhang).
Mein OS ist Windows 7 Ultimte x64, und notgedrungen nutze ich statt meiner HD 6970 die alte HD 4870.(Die Pumpe war defekt, und ich wollte den WaKühler nicht nocheinmal de- und aufmontieren.)


MfG
fac3l3ss

Ach das meinst du... Ja das soll gewisser maßen so, obwohl wir das natürlich ändern. Im Originalspiel is das auch so. Aber wir werden natürlich für "HD" noch einiges mehr machen, unter anderem das beheben, weils natürlich wirklich nich gut is :P

Aber ich bereite eventuell mal eine Partikelsystem demo vor, wo man verschiedene parameter dann dynamisch einstellen kann ;)

mfg
 
ich glaube das Originalspiel müsste ich auch noch einmal spielen ... wobei dort finde ich die Grafik (Draufsicht) manchmal viel zu unnübersichtlich; bist du jetzt schon über der Kante? Geht noch ein paar Pixel? .... An die Ego-Perspektive ist mal als jüngere Generation schon eher gewöhnt :D

Dann ist mir noch eine Frage eingefallen, und zwar habt ihr euch schon mit dem Aspekt beschäftigt, in welchem Speicher (VRAM oder SystemRAM) sich eure Buffer befinden? Weil ich habe darüber bisher noch keine Lektüre o.ä. gefunden ... und ich vermute, dass bei mir das meiste im RAM liegt, da der Treiber wahrscheinlich keine Lust hat über 800MB Vertexdaten pro Frame auf den VRAM zu verfrachten :ugly:

Außerdem erinnere ich mich gerade daran, dass du irgendwann mal nach Instancing gefragt hast. Und ich habe mir neulich die ganzen Tutorials von rasertek.com runtergeladen. Dort ist so ziemlich alles zum Thema DX11 kostenlos und gut beschrieben, leider ist die seite momentan nicht aufrufbar, aber wenn du interesse hast, lad ich die sachen mal irgendwo hoch ;)
 
fadade, ich meine nicht Marble Madness, sondern "Marble Insanity" ( Marble Insanity - Download - CHIP Online ). Das ist fast das gleiche wie unser Spiel jetzt ;) Nur das unser Spiel natürlich viiiiel schöner wird :D

Und das mit dem Speicher: Wie gesagt das DX-zeugs macht (noch) zum größten Teil sebi , aber ich kann dir recht sicher sagen, dass wir all diese Vertextdaten direkt im Grafikspeicher ablagen aka. VRAM. Alles andere wäre natürlich extre doof für Performance, obwohl ich nicht glaube, dass du irgendwie 800 MB Vertexdaten zusammenbekommst ;)

Und zu Instancing: Ja klar ich fänds super, wenn du das hochladen würdest, solche Tutorials kann man immer gut gebrauchen. Obwohl auch DX9 schon Ansätze von "Instancing" hat, je nachdem wie man das Wort definiert. Aber wie gesagt, wäre sehr interessiert.
Nur werden wir, wie ich schon sagte, das Projekt die nächsten 2 bis 3 Wochen mehr oder weniger ruhen lassen, weil wir uns etwas anderem widmen müssen.

mfg
Lukas
 
Mensch Leute meine Durchschnittszeit Pro Level is ca 7 Sekunden ;)
Wir am Ende angezeigt...

(Wir bzw sebi bastelt gerade an einem Build server, was ich cool finde :P)

mfg
 
Achja wurde ja schon geklärt marble maddnes != insanity :D
Tjoa, also das mit den 800MB Vertexdaten geht, wobei die jetzt nicht optimiert sind, also wahrscheinlich nochmal so 2/3 runter und dann sollte es realistischer sein. Nur ich muss dort eben noch welche in CBs haun, dann gehts nochmal runter.
Alles klar, dann uppe ich nachher mal wat wenn ich wieder @home bin; schreib dich dann wohl wieder im Channel an ;)
Vielleicht wäre ein wenig Werbung für den IRC auch nicht schlecht .... aber das solltet ihr entscheiden, ob das jetzt schon sein "muss".

Also ich muss sagen, meine erste Zeit war bestimmt über eine Minute :lol:
erstmal an die Dynamik gewöhnen ^^

Achja und wenn ihr die Kamera jetzt vom Level einfach irgendwo fixed positioniert, dann ist es schon fast wie Marble Madness :P
Nur ein paar hindernisse und "Gegner" würden dann noch fehlen, aber die Grafik ist auf jeden fall jetzt schon besser :daumen:
 
Nur mal so eine Frage:
Schonmal über eine Android-Version/Portierung nachgedacht?
Es wäre meiner Meinung nach nämlich das ideale Spiel für Smartphone oder Tablet! :daumen:
(Ich gehe BTW mal davon aus, dass man C++ mit DX Bibliothek nicht einfach so auf eine (Java!?)Plattform portieren kann.)


MfG
fac3l3ss
 
Ja also Werbung für den IRC Channel ist nie falsch ^^ Kommt alle her und erfreut euch an der Stille xD
Ne ehrlich, also mach ruhig viel Werbung, ich bin eig immer on und antworte auch.

Und naja wir wollten ja schon das modern machen, also wie Insanity ausm 3rd Person. Is einfach besser als so von oben, daher werden wir das Insanity Prinzip weiter verfolgen


Haben wir nicht, da bis jetzt noch nichtmal einer von uns ein Smartphone besitzt (ja ich weiß unglaublich^^). Ich könnte mir das Spiel auch gut als handheld Spiel vorstellen, aber darein werden wir wohl nicht viel Resourcen verschwenden..
Zudem kommt dass mir Java recht zuwieder ist und ich nicht die Programmiersprache wechseln möchte, und wie du schon sagst: Ich weiß nich wie das mit DirectX und Android aussieht, aber wohl eher schlecht weil Android = OpenSource (oder iwie so) und DX=nicht ;P
Wenn du Ahnung davon hast und mega viel Bock, können wir dir den Source geben und du baust ne Android Version daraus^^


Naja, soweit erstmal. Hat jemand sonst noch Vorschläge was als nächstes eingebaut werden sollte? Also fadade hat ja schon Gegner und Hinderisse erwähnt, aber sonst noch was?

mfg
Lukas
 
1) nein um heavens'ssssss Willen nicht diese stationäre Cam verwenden, auf Dauer ist das echt gammel ....
2) ich hab grad Probleme einen ordentlichen OCH zu finden wo ich das hochladen kann ... sonst kannste mir vielleicht ne mailadresse geben, dann schick ichs dir so. Oder im Channel wenn das geht :D
3) also bei MarbleMadness wars wie gesagt eigentlich genauso nur gab es dort noch

  • Gegner (also Kugeln die einem festen Pfad folgten und andere einfach runterschubsten)
  • verschiedene Untergründe (rutschig, klebrig ...)
  • so Ventilator-Dinger (haben einen halt auch durch die Gegend geschoben)
  • Rohre auf andere Level-Ebenen
  • und manchmal musste man auch springen, also springen an sich ging nicht, aber mit schwung über einen abgrund
  • last but not ... first ( :D ) konnte man nur eine begrenzte strecke fallen, andernfalls -> KLIRRRR ^^


4) also eine Portierung würde ich jetzt eh noch nicht machen, erstmal schauen, dass sich das gut entwickelt (vielleicht auch gleich mit einem Level-Editor, das sorgt in der "Community" immer für mehr Teilnahme und spass :daumen: )


5) jetz doch erstmal im Anhang (instancing bei Kapitel 37 ;) ) (nehm ich demnächst wieder raus, damit der arme PCGH-Server nicht so zugeschustert wird :ugly:)


Anhang anzeigen 516102
 
Eventuell hat sich ja jemand gefragt, ob dieses Projekt aufgegeben wurde.. (oder hat uns keiner vermisst? :'-( )
Jedenfalls: NEIN wurde es nicht!

Wir, bzw. zu bestimmt 90% sebi, hat in letzter Zeit echt einige tolle Sachen gezaubert. Wir werden die nächsten Tage eine Demo rausgeben. Hier schonmal ein Vorgeschmack:

http://sebi707.de/downloads/files/0001845/Thu_Aug_09_17-56-14_2012.png
http://sebi707.de/downloads/files/0001846/Thu_Aug_09_17-56-52_2012.png
http://sebi707.de/downloads/files/0001847/Thu_Aug_09_17-57-33_2012.png
http://sebi707.de/downloads/files/0001848/Thu_Aug_09_17-57-58_2012.png
http://sebi707.de/downloads/files/0001849/Thu_Aug_09_17-58-39_2012.png


Wie man sieht mit Schatten, highres texturen und andere Sachen, die ich die Tage erleutern werde ;)
In der Demo wird man das ganze Original-Spiel durchspielen können, also 15 Level.

Was sagt ihr zu den Bildern? Vllt freut sich ja einer auf die Demo :3

LG
Lukas

PS: wie mach ich, dass man die Bilder hier schon im Thread sieht, statt nur die Verlinkung? :(
 
So, hier gibts endlich die Demo :)

Wir präsentieren stolz die Version V1.0 Alpha


Benötigte Software:

Grundkonfiguration:
Datei /config/game.cfg öffnen.
Auflösung, Vollbild und Vsync konfigurieren.
Hinweiß: Auf alten oder Laptop-Grafikkarten kann das Spiel eventuell zu langsam laufen. Das Spiel ist noch nicht performance optimiert und deswegen teilweise sehr fordernd...

Steuerung:
Pfeiltasten: Steuerung der Murmel
F3: Debug-View
F12: Screenshot
^: Console öffnen

Konsolen-Commands:
"load_map map3A.dat" -> Läd Map
"activate_immortal" -> unendlich Leben

Zum Spiel beenden, entweder Konsolen-Befehl "close_engine" nutzen oder mit Alt-Tab rausspringen und dann das Fenster X-en.


Technische Infos
Wir nutzen eine komplett deferred Renderpipeline, die (später) das Hinzufügen zahlreicher Lichter ermöglicht. Wir haben ein directionales Sonnenlicht, welches Schatten wirft (2k Shadow Map per Exponential Shadow Map Verfahren). Das resultierende Bild wird per FXAA Verfahren geglättet (wir werden bald SMAA für starke Grafikkarten und bessere Qualität einbauen).

Das wäre eigentlich alles. Wir hoffen euch gefällts und vorallem dass die Grafik schon teilweise begeistert :D
Könnt ja mal probieren den derzeitigen Rekord von 8,4 Sekunden Durchschnitt zu brechen (wird am Ende nach 15 Leveln angezeigt) ;)

Wir würden uns über Feedback freuen, also wenn ihr einen Bug entdeckt, falls es auf eurer Grafikkarte schrecklich aussieht, einfach nur ein Bildfehler oder falls ihr einfach nur eine Meinung los werden wollte.

Liebe Grüße,
Lukas
 
Zuletzt bearbeitet:
Könntest du den Aufbau der Level Dateien veröffentlichen, denn dann könnten man auch einen Level Editor dafür schreiben?

Viele Grüße
printf
 
Ich habe leider gerade nicht so viel Zeit, daher eine kurze Antwort, sorry dafür :P

So aufgebaut:
17*17 floats (4 byte) für die Höhe der Heightmap

danach 16*16 folgende Daten:
- unsigned short (noch eine höhe, wissen selber nicht was)
- unsigned short (texture ID)
- unsigned int (entity, also spezielle map teile

danach 16*16 normal data (die wir aber nicht nutzen)
und danach noch ein word, welches den start "blickwinkel" angibt
danach noch der Levelname als string

hier der Original source fürs load map:
Code:
loadmap:

   filename$ = "data\map" + str$(curlevel) + cursubmap$ + ".dat"
   if file exist(filename$) = 0
     return
   endif

   `read in height data
   open to read 1, filename$
   for z=0 to 16
   for x=0 to 16
      read float 1, height#
      set matrix height 1, x, z, height#
   next x
   next z

   `read in and process tile data
   i=1
   for z=0 to 15
   for x=0 to 15
      read word 1, height
      read word 1, tilegfx
      set matrix tile 1, x, z, tilegfx
      `process entity
      read file 1, entity
      entities(x+1,z+1) = entity
      if entity = 0
         startx = x : startz = z
      endif
      if entity = 1
         goalx = x : goalz = z
      endif

      inc i
   next x
   next z

   `read in normal data
   for z=0 to 15
   for x=0 to 15
      read float 1, nx# : read float 1, ny# : read float 1, nz#
      if nz# > 0
         nx# = nx# * 0.05 : ny# = ny# * 0.05 : nz# = nz# * 0.05
      else
         nx# = nx# * 20.0 : ny# = ny# * 20.0 : nz# = nz# * 20.0
      endif

      set matrix normal 1, x, z, nx#, ny#, nz#
   next x
   next z

   update matrix 1

   `read in extra data
   read word 1, initangle
   read string 1, levelname$

   close file 1

Der Code ist in Dark Basic Pro und meiner Meinung nach eine richtig schlimme SPrache. Aber man kann es sich zurechtwurschteln.

Zur Textur ID:
string Texture[15] = { "Space", "Grass", "Earth", "Earth", "Earth", "Earth", "Earth", "Starfield", "Lava", "Grass", "Ice", "Water", "Metal", "MetalArrowDown", "MetalArrowUp" };

So das wars erstmal :D
Hoffe du kannst damit was anfangen,

LG
 
Zurück