Java 3D

Tags:    java-applet 3d

Hej alle!

Jeg har lige set en tutorial på youtube, fordi jeg gerne vil prøve at lave et 3D spil eller lignende i Java. Efter at have set videoen igennem virker koden ikke, så jeg tjekker koden og videoen igen, men det virker stadig ikke... Der skulle gerne poppe en sort firkant op på skærmen, men det sker bare ikke.. Jeg kører den her som en java application og ikke som en applet. Modtager ingen Exceptions, og min Thread starter og kører rundt, det har jeg tjekket :P

PS. Sorry for the comments :S

Component.java
Fold kodeboks ind/udJava kode 




5 svar postet i denne tråd vises herunder
2 indlæg har modtaget i alt 9 karma
Sorter efter stemmer Sorter efter dato
Har du læst koden igennem?

Tegningen sker i 'render()' metoden, men den bliver ikke kaldt nogen steder.
Smid følgende ind et eller andet sted:
Fold kodeboks ind/udJava kode 


...så virker det. Det er nok ikke helt måden at gøre det på, men det virker.

Personligt ville jeg ikke tegne på et Image, men bare direkte på applettens Graphics objekt...eller rettere så ville jeg nedarve fra et JPanel. Det er double buffered.



Indlæg senest redigeret d. 13.01.2013 12:58 af Bruger #2695
Jeps men hvert femte millisekund er spild af cycles for skærmen opdateres sikkerg kun 60 gange i sekundet. Så sov i 1000/60 ms.



Har du læst koden igennem?

Tegningen sker i 'render()' metoden, men den bliver ikke kaldt nogen steder.
Smid følgende ind et eller andet sted:
Fold kodeboks ind/udJava kode 


...så virker det. Det er nok ikke helt måden at gøre det på, men det virker.

Personligt ville jeg ikke tegne på et Image, men bare direkte på applettens Graphics objekt...eller rettere så ville jeg nedarve fra et JPanel. Det er double buffered.


Det virker nu, mange tak! - Det er bare underligt, for han kører ikke render metoden... Han (som er ham der lavet den tutorial jeg følger), påstår at, fordi Component extends Applet, så kører Render metoden automatisk...



Well....han lyver :-)
paint(Graphics) bliver kørt hver gang 'repaint()' bliver kaldt eksplicit og hver gang systemet mener, at det skal gøres (når vinduet ændrer størrelse, bliver skjult/vist og så'n). Så i paint() kan du udføre dine tegnerutiner.



Så det ville være smart at kører render metoden i run metoden, så skærmen ville blive opdateret "hele" tiden? Will do! Mange tak!



t