BASIC

Author Topic: Bumpmapping  (Read 4123 times)

Offline BumbleBee

  • Global Moderator
  • Prof. Inline
  • *******
  • Posts: 891
    • View Profile
Bumpmapping
« on: 2008-Jan-12 »
Wurde aufgefordert :D zu erklären was man für Bumpmapping (Bumps = Unebenheiten) in GLBasic so alles braucht.Und das ist nicht viel.

1.Man braucht eine Textur. (Ach ne) ;)
2.Die Textur in einem Bildbearbeitungsprogramm in eine Graustufen Textur umwandeln.
3.Die Texturen laden. Einmal mit LOADSPRITE und einmal mit LOADBUMPTEXTURE
3.Ersten Parameter bei X_SPOT auf -1.  
4.Zweiten Parameter dann bei X_SETTEXTURE auf 1 setzen. (oder 2...je nach BumpTexturnummer)

Also:
LOADSPRITE "Tex_0.bmp",0
LOADBUMPTEXTURE "Tex_1.bmp", 1
                          :
X_SPOT_LT -1 .....
X_SETTEXTURE 0, 1//  0=Textur , 1=Bump

Das wars schon. Hoffentlich stimmt das auch. Man braucht halt noch ein Objekt wo man das ganze draufklebt und noch die Kamera auf Position bringen. Der Rest steht in der Hilfe.:lol:

Cheers
The day will come...

CPU Intel(R) Core(TM) i5-3570k, 3.4GHz, AMD Radeon 7800 , 8 GB RAM, Windows 10 Home 64Bit

Sebastian

  • Guest
Re: Bumpmapping
« Reply #1 on: 2008-Jul-03 »
Kleine Ergänzung:
Bumpmapping ist (zumindest in GLBasic) ein wenig... unflexibel. Es setzt nämlich vorraus, dass JEDES Objekt eine Bumpmap benutzt. Versucht man, ein anderes Objekt nur mit Diffuse Map (also Textur) zu rendern, wird man mit einem schwarz/weissen Objekt "bestraft". Umgehen kann man das, indem man eine komplett weisse Textur anlegt und diese Textur allen Objekten zuweist, die kein Bumpmapping haben sollen.

Offline Kitty Hello

  • code monkey
  • Administrator
  • Prof. Inline
  • *******
  • Posts: 10713
  • here on my island the sea says 'hello'
    • View Profile
    • http://www.glbasic.com
Re: Bumpmapping
« Reply #2 on: 2008-Jul-03 »
Stimmt so nicht!
Wenn Du ein weiteres Objekt _ohne_ Bump-Mapping rendern willst, mach einfach das Licht -3 (oder -2!?) wieder aus, indem Du als Öffnungswinkel "0" angibst.

Das EntitySystem behandelt dieses Thema mit dem Befehl "EntityModeBumpMapping(handle)".

Sebastian

  • Guest
Re: Bumpmapping
« Reply #3 on: 2008-Jul-03 »
Oh, danke. Dann nehme ich sofort Alles wieder zurück und behaupte das Gegenteil  :lol:
Ist trotzdem besser, es eingeschalten zu lassen und für die anderen Objekte eine weisse Bumpmap zu benutzen (siehe 3D Snippets zum Thema Per Pixel Lighting)  =D

Offline Kitty Hello

  • code monkey
  • Administrator
  • Prof. Inline
  • *******
  • Posts: 10713
  • here on my island the sea says 'hello'
    • View Profile
    • http://www.glbasic.com
Re: Bumpmapping
« Reply #4 on: 2008-Jul-03 »
eher nicht, weil BumpMapping viel Prozessor-Rechenzeit kostet. Heute sollte man (wo's geht) auch dafür einen Shader verwenden.

Offline Schranz0r

  • Premium User :)
  • Administrator
  • Prof. Inline
  • *******
  • Posts: 5021
  • O Rly?
    • View Profile
Re: Bumpmapping
« Reply #5 on: 2008-Jul-03 »
Dann mach doch mal ein schickes Shader Tutorial Gernot ;)
Ich kenn mich da null aus !  =( :noggin:
I <3 DGArray's :D

PC:
AMD Ryzen 7 1700 @3.9GHz, 16GB HyperX Fury 3000MHz Ram, ASUS ROG GTX 1060 STRIX 6GB, Windows 10 Pro 64Bit, MSi Tomahawk B350 Mainboard

Sebastian

  • Guest
Re: Bumpmapping
« Reply #6 on: 2008-Jul-03 »
Per Pixel Lighting kostet auch als Shader einiges an Performance, aber ich weiss natürlich nicht, wie GLBasic Bump Mapping intern handhabt. Im Prinzip funktioniert das mit der weissen Bump Map ja bloss, weil Per Pixel Lighting quasi eine Voraussetzung für Bump Mapping ist.