Licht Reichweite einstellen ?????

Fragen zu Grafik- & Soundproblemen und zur Spieleprogrammierung haben hier ihren Platz.
Benutzeravatar
dllfreak2001
Beiträge: 2925
Registriert: 07.09.2004 23:44
Wohnort: Bayern

Beitrag von dllfreak2001 »

Ich hab mal sowas gemacht, Sonnensystem als Test für den Milkshapeexporter.
Da hab ich das Licht in die Sonnenkugel gesteckt und den Kramm halt kleiner skaliert. Man muß jetzt schon ziemlich weit fliegen um nix mehr vom Licht zu sehen.
Wenn man Schatten macht kann man sogar sehen wie der Mond ne Sonnenfinsternis macht.
I´a dllfreak2001
Benutzeravatar
Ground0
Beiträge: 318
Registriert: 05.02.2005 02:09
Wohnort: Stilli, Schweiz
Kontaktdaten:

Beitrag von Ground0 »

Du meinst also das Ganze auf die Licht verhältnisse Dimensionieren ? Noch kleiner als sie schon ist... Mal kuken vieleicht bleibt mir ja nichts anderes übrig ...

Gruss Ground0
lmon Monitoring Service inkl. Clients
lweb Multi-Threaded Webserver
lbup-server Backup Server applikation
lmanager ERP Applikation.
Benutzeravatar
dllfreak2001
Beiträge: 2925
Registriert: 07.09.2004 23:44
Wohnort: Bayern

Beitrag von dllfreak2001 »

Tja, PB-Ogre ist noch nicht so besonders.


Wenn das aber klappt mit der dll dann sag bescheid.
I´a dllfreak2001
Benutzeravatar
Ground0
Beiträge: 318
Registriert: 05.02.2005 02:09
Wohnort: Stilli, Schweiz
Kontaktdaten:

Beitrag von Ground0 »

Hallo

Also wolte anfangen Herum zu experimentieren....

Code: Alles auswählen



InitEngine3D()
InitSprite()
InitKeyboard()
LoadFont(0,"Courier New",22)
Add3DArchive("\3D",#PB_3DArchive_FileSystem)
Parse3DScripts()
OpenScreen(1024,768,32,"Test")
LoadMesh(22,"Test.mesh")
CreateEntity(23,MeshID(22),#PB_Material_None ,0,0,-900)
CreateEntity(43,MeshID(22),#PB_Material_None ,0,-200,-900)
AmbientColor(RGB(0,0,0))
CreateLight(3,RGB(255,255,200),0,100,-900)

OpenLibrary(54,"Engine3D.dll")
;  CallCFunction(54,"LightAttenuation",0,3)

CreateCamera(1,0,0,100,100)
CameraLocate(1,0,0,0)

If IsLight(3)
Else
  MessageRequester("Fehler","Keine Lichter")
  End
EndIf
Licht=-900
Repeat
  
  CallCFunction(54,"LightLocate",3,0,100,Licht)
  ;LightLocate(3,0,100,Licht)
  Licht=Licht--1
  Delay(0)
ExamineKeyboard()
RenderWorld()
StartDrawing(ScreenOutput())
BackColor(RGB(0,0,0))
DrawText(20,20,"Position Licht:"+Str(Licht),RGB(255,255,255))
StopDrawing()
FlipBuffers()

Until KeyboardPushed(#PB_Key_Escape)
CloseLibrary(54)

RenderWorld()
FlipBuffers()

CloseScreen()
Das Ding macht den Screen auf und sobald er beim CallFunction ankommt ist schluss, da schliesst er den Screen das Programm bleibt aber weiterhin Aktiv und Stürtzt nicht ab... kein Fehler, keine Debug Meldung kein Garnichts.... :(

So geht es dann: :D

Code: Alles auswählen

  ;CallCFunction(54,"LightLocate",3,0,100,Licht)
  LightLocate(3,0,100,Licht)
Weis da Gerade ein Profi was ich falsch mache?

Gruss Ground0[/code]
lmon Monitoring Service inkl. Clients
lweb Multi-Threaded Webserver
lbup-server Backup Server applikation
lmanager ERP Applikation.
Benutzeravatar
dllfreak2001
Beiträge: 2925
Registriert: 07.09.2004 23:44
Wohnort: Bayern

Beitrag von dllfreak2001 »

in der Hilfe steht das alle PArameter angegebn werden müssen
und vielleicht funzt das nicht weil diese Funktion mit quads oda so arbeitet.
CallCFunction() scheint noch nicht vollkompatibel zu sein.
I´a dllfreak2001
Benutzeravatar
Ground0
Beiträge: 318
Registriert: 05.02.2005 02:09
Wohnort: Stilli, Schweiz
Kontaktdaten:

Beitrag von Ground0 »

Da die Engine ja im Source Forliegt kann ich da ja mal reinkuken gehen :( ich h**e C und alles was damit anfäng grmbl... aber oki meld mich wieder.

Gruss Ground0
lmon Monitoring Service inkl. Clients
lweb Multi-Threaded Webserver
lbup-server Backup Server applikation
lmanager ERP Applikation.
Benutzeravatar
Ground0
Beiträge: 318
Registriert: 05.02.2005 02:09
Wohnort: Stilli, Schweiz
Kontaktdaten:

Beitrag von Ground0 »

So bin mal durchdie Ogre seiten gekrochen und habe mich etwas eingelesen :) wie es scheint im Moment kan man einiges mit den Material Scripts machen :D also wenn ich dämnächst mal Resultate habe die etwas nützen werde ich sie Vorlegen

Gruss
lmon Monitoring Service inkl. Clients
lweb Multi-Threaded Webserver
lbup-server Backup Server applikation
lmanager ERP Applikation.
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

Ground0 hat geschrieben:Hallo ...

Also nach durchforsten der Engine3D.dll bin ich auf das Gestossen in 3D Programmen ist es genau das wass ich suche... :
LightAttenuation
Was denkt ihr?
Wenn ja könte man es da mit den PureBasic DLL dateien wass ändern daran mit einem Funktionsaufruf darauf... ?

Gruss G0
da hatte ja noch keiner geantwortet....

"Attenuation" ist aufjeden fall der richtige schlüsselbegriff.
kommt jetzt drauf an, was für parameter die funktion erwartet,
aber normalerweise sollte das eine standardentfernung sein,
bei der die lichtstärke den wert "1" besitzt,
und ein exponent, der die stärke des "Fadings" bestimmt.
(natürlich zusätzlich zu den parametern, die bestimmen,
welche lichtquelle du überhaupt meinst)
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
Ground0
Beiträge: 318
Registriert: 05.02.2005 02:09
Wohnort: Stilli, Schweiz
Kontaktdaten:

Beitrag von Ground0 »

Bevor dieses Thema Komplett vergessen ist...

Hab mir das ganze Materialscript usw. angeschaut gehabt, das alles hat aber nur auf die Objekte selbst einfluss, keinen Einfluss auf das Licht :(

Werd mich jetzt noch andersrum schlau machen...

Cu
lmon Monitoring Service inkl. Clients
lweb Multi-Threaded Webserver
lbup-server Backup Server applikation
lmanager ERP Applikation.
Benutzeravatar
Xenos
Beiträge: 114
Registriert: 24.01.2006 20:33
Wohnort: Dresden(hin und wieder)
Kontaktdaten:

Beitrag von Xenos »

Die Ogre Engine ist halt nicht das gelbe vom Ei (immer noch besser als gar nichts)

Was mir persönlich fehlt ist eine Möglichkeit:
-senkrechte Wände in ein Terrain einzubauen,
-Meshes zur Laufzeit zu erstellen (also nicht aus der Data-Sektion oder einer externen Datei) und zu animieren
-Entities mit Parent und Child- Properties auszustatten

Möglicherweise gibt es dafür schon Lösungen, aber für mich als 3D-Nulpe gillt bisher:
Ich würde gern, kann aber nicht... :(
gô ni itte wa gô ni shitagae.
(Wenn du in ein Dorf kommst, richte dich nach seinen Gepflogenheiten - jap. Sprichwort.)
Antworten