Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

David Scherfgen

Administrator

  • »David Scherfgen« ist der Autor dieses Themas

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

11

06.08.2003, 17:24

Hallo!

Es gibt wieder einen schönen neuen Screenshot.
Ich habe jetzt Lens-Flares eingebaut, und zwar in drei Passes: Glow, Ray und Ring. Alle Parameter sind völlig frei einstellbar (Abwächung bei größerem Winkel zum Licht, Einblendzeit, Ausblendzeit, Größen, Farben, Intensität, Intensität bei Verdeckung etc.).
Um zu erkennen, ob ein Licht verdeckt wird (z.B. von einem Berg), schieße ich einen Strahl durch den Octree, der hier also für Kollisionserkennung benutzt wird. Es klappt schon sehr gut!
Hier das Bild:


(Link)

12

15.08.2003, 20:04

Hallo,

ich finde, das Spiel sieht sehr gut aus.

Ich bin mit meinem Spiel noch nicht so weit....

Aber nun meine Frage,

könntest du vielleicht so eine Art Tutorial zum Theme Landschaftdesign mit Octress und Lightmaps herausbringen etc.

Ich finde, dass das eine gute Idee ist. Schüssi, Chrissi

Patrick

Alter Hase

Beiträge: 1 264

Wohnort: Düren

Beruf: Fachinformatiker für Anwendungsentwicklung

  • Private Nachricht senden

13

15.08.2003, 20:45

Zitat von »"chrissi"«

könntest du vielleicht so eine Art Tutorial zum Theme Landschaftdesign mit Octress und Lightmaps herausbringen etc.


ÄÄhme ich würde bei Allem Respekt davon abraten. Denn David macht das mit einem Model und nicht mit einer Heightmap, nun bis jetzt empfinde ich das Terrain nicht sehr Dynamisch (also bei Granaten Explosionen keine Krater)

Ich weis net ob sich bis jetzt noch mehr geändert hat, aber Das Terrain ist net so gut wie eine Heightmap mit ROAM oder sonstige Algos :)

Aber für ein kleines Terrain reichts aus :) Aber ich glaub bei sichtweiten von 15 KM wirds mit der Performance ohne TriangleSplitting recht schwer ;D

David Scherfgen

Administrator

  • »David Scherfgen« ist der Autor dieses Themas

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

14

15.08.2003, 21:17

Zitat von »"Patrick"«

ÄÄhme ich würde bei Allem Respekt davon abraten. Denn David macht das mit einem Model und nicht mit einer Heightmap, nun bis jetzt empfinde ich das Terrain nicht sehr Dynamisch (also bei Granaten Explosionen keine Krater)

Das heißt ja nicht, dass ich nichts anderes kann, nicht wahr?
Ich dachte nur, dass es für dieses Spiel reicht, ein statisches Modell zu nehmen, da ich nicht vorhabe, endlose Wüstenlandschaften zu kreieren. Und selbst wenn, könnte ich das Modell noch manuell in 3ds max in mehrere Teile aufteilen, die dann gecullt werden könnten.

Anonymous

unregistriert

15

20.08.2003, 00:49

Das mit den Height-maps würd mich schon interessieren. Kennt da vielleicht jemand ne deutsche tut? englisch tut´s notfalls auch

Patrick

Alter Hase

Beiträge: 1 264

Wohnort: Düren

Beruf: Fachinformatiker für Anwendungsentwicklung

  • Private Nachricht senden

16

20.08.2003, 11:57

Zitat von »"deadlus"«

Das mit den Height-maps würd mich schon interessieren. Kennt da vielleicht jemand ne deutsche tut? englisch tut´s notfalls auch


Braucht man dafür echt ein Tut? Okay wenn du schwere Algos reinbaust z.B. ROAM oder sonst was kann man das ja verstehen aber so?

Ich schmeis einfach mal diesen code in den Raum, ich glaub den versteht jeder:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
void CTerrain::CreateTerrain(char *Filename, float xs, float ys)
{
unsigned char aHeightMap[TERRAIN_X + 1][TERRAIN_Y + 1];
D3DVERTEX* pVertexData;
short* pIndexData;
ifstream File;

//load height information from file
File.open(Filename,ios::binary);

for(unsigned y = 0;y < (TERRAIN_Y + 1);++y)
 {
 for(unsigned x = 0;x < (TERRAIN_X + 1);++x)
  {
  File.get(aHeightMap[x][y]);
  }
 }

File.close();

//create vertex buffer and fill in vertcies
g_App.GetDevice()->CreateVertexBuffer(sizeof(D3DVERTEX) * m_dwTerrainVertices,D3DUSAGE_WRITEONLY,D3DFVF_CUSTOMVERTEX,D3DPOOL_MANAGED,&m_pTerrainVB,NULL);
m_pTerrainVB->Lock(0,0,(void**)&pVertexData,0);

for(y = 0;y < (TERRAIN_Y + 1);++y)
 {
 for(unsigned x = 0;x < (TERRAIN_X + 1);++x)
  {
  pVertexData[x + y * (TERRAIN_X + 1)].fX = (float)x;
  pVertexData[x + y * (TERRAIN_X + 1)].fY = (float)y;
  pVertexData[x + y * (TERRAIN_X + 1)].fZ = (float)aHeightMap[x][y] / 15.0f;
  pVertexData[x + y * (TERRAIN_X + 1)].dwColor = 0xffffffff;
  }
 }

m_pTerrainVB->Unlock();

//create index buffer and fill in indices
g_App.GetDevice()->CreateIndexBuffer(sizeof(short) * m_dwTerrainPrimitives * 3,D3DUSAGE_WRITEONLY,D3DFMT_INDEX16,D3DPOOL_MANAGED,&m_pTerrainIB,NULL);
m_pTerrainIB->Lock(0,0,(void**)&pIndexData,0);

for(y = 0;y < TERRAIN_Y;++y)
 {
 for(unsigned x = 0;x < TERRAIN_X;++x)
  {
  *pIndexData++ = x + y * (TERRAIN_X + 1);
  *pIndexData++ = x + 1 + y * (TERRAIN_X + 1);
  *pIndexData++ = x + 1 + (y + 1) * (TERRAIN_X + 1);

  *pIndexData++ = x + y * (TERRAIN_X + 1);
  *pIndexData++ = x + 1 + (y + 1) * (TERRAIN_X + 1);
  *pIndexData++ = x + (y + 1) * (TERRAIN_X + 1);
  }
 }

m_pTerrainIB->Unlock();
}


Achja... der code ist net von mir lag verschollen irgendwo in meiner Festplatte :D Was das nun für ein Heightmapformat ist was da geladen wird weis ich net, sieht mir aber nach *.raw aus. Aber ich denke diesen Code versteht jeder.

17

20.08.2003, 14:25

Igit !

IBs nimmst du ?

Ich hab das damit mal Probier, is zwar schön aber auch irgendwie scheisse weil wenn du nur 1 Viereck des Terrains beleuchten willst (Vertexcoloring) sind die Ecken der Anliegenden Vierecke auch gecolored.
Das nervt einbisschen aber für Berge isses Ideal.


Naja ich use wieder VBs + BBs. Ich brauch das VC (Vertexcoloring) für spätere Effekt nämlich noch dringend :D

cya

Patrick

Alter Hase

Beiträge: 1 264

Wohnort: Düren

Beruf: Fachinformatiker für Anwendungsentwicklung

  • Private Nachricht senden

18

20.08.2003, 15:55

@ghostie:
Ja ich benutze IBs mit VBs, weils einfach schneller ist als nur VBs. Nebenbei kann man einen VB und IB sehr gut locken um einzelne Vertices zu verändern.

AXA

Frischling

  • Private Nachricht senden

19

15.09.2003, 16:38

Sieht ja echt GEIL aus die Bilder Wie Das Model geladen wird
(Height-Map...). ist mir egal. Hauptsache es geht schnell
und die Kollision stimmt :) .

Ich freue mich schon auf den Code vieleicht könntest du das
ja in deinen neuen Buch erwähnen (als Beispiel Game zum Schluss)

:huhu:
Aktuelles Projekt: Geheim

wird diese Projekt ein erfolg gründe ich
ein Team !!!

NoName

Treue Seele

Beiträge: 118

Beruf: Student

  • Private Nachricht senden

20

26.10.2003, 22:09

Was ist nun... läuft das Projekt noch?

Werbeanzeige