PROGRAMAS EN BLITZ3D
Los programas que aparecen aquí eran los que aparecían en la página principal. En la medida en que vaya presentando nuevos programas, los más antiguos los ire trasladando a esta entrada del blog, para quienes miren y busquen por primera vez, puedan encontrar la serie de programas presentados.
PROGRAMA No. 1
1. Las líneas en color naranja son notas de programación dentro del programa; e inician siempre con punto y coma.
2. Las líneas en color azul, son órdenes o comandos de programación en lenguaje Blitz BASIC 3D.
3. El texto en color verde, es una frase que aparece en la pantalla gráfica, en las coordenadas 320, 500.
; ==============================================================
; autor(es):
; grado:
; funcion: crea cubo estático con primitiva gráfica
; fecha: agosto-8-2023
; lenguaje: BLITZ3D
; archivo de disco: "primitiva1.bb"
; =============================================================
; crear ventana 3D con x=800, y=600
Graphics3D 800,600
; dibujar en la memoria de pantalla: buffer trasero
SetBuffer BackBuffer()
; crear cámara
camara=CreateCamera()
; crear luz. La entidad cámara se almacena en la variable "luz1"
luz1=CreateLight()
;rotar la luz 30 grados en x
RotateEntity luz1, 30,0,0
; crear cubo 3d con primitiva gráfica: CreateCube() La imagen del cubo se alamacena
; en la variable: "caja1"
caja1= CreateCube()
; posicionar el gráfico "caja1" en: x=-3, y=-2, z=7
PositionEntity caja1,-3,-2,7
; crear bucle infinito con while - wend
; el bucle termina si se pulsa la tecla ESC
; el código de la tecla "ESC" es: 1
While Not KeyHit(1)
UpdateWorld
RenderWorld
Text 320,500, "Dibujo de cubo 3D, estático, sin textura"
Flip
Wend
End
PROGRAMA No. 2
; ==============================================================
; autor(es):
; grado:
; funcion: crea esfera estática con primitiva gráfica
; fecha: agosto-19-2023
; lenguaje: BLITZ3D
; archivo de disco: "primitiva2.bb"
; =============================================================
Graphics3D 800,600,16 ; Establecemos tamaño de pantalla gráfica
SetBuffer BackBuffer() ; Dibujamos en el buffer trasero o de pantalla
camara=CreateCamera() ; Siempre hay que crear una cámara para
;observar el mundo
luz=CreateLight() ; Siempre Creamos una luz ambiental
LightColor luz,0,90,250 ; Damos color a la luz ambiental para iluminar
;nuestra entidad y poder verla
; El color es una mezca de 3 números: R,G,B (red, green, blue)
; cada valor puede ir de 0 a 255
bola=CreateSphere() ; Creamos una esfera y se almacena en la variable "bola"
MoveEntity bola,0,-3,7 ; Y la movemos hacia delante para que la pueda ver la cámara
; x=0, y=-3, z=7
; se crea un bucle infinito con los comandos: REPEAT - UNTIL
; El bucle termina se se orime la tecla "ESC"
Repeat
UpdateWorld ; Actualizamos movimiento, colisiones (si los hubiera), etc
RenderWorld ; Dibujamos el mundo (camara,cubo y luz)
Flip ; Pasamos el renderizado a la pantalla para que se vea
; Del Backbuffer al FrontBuffer
Until KeyDown(1) ; Terminamos si pulsamos Escape
End
PROGRAMA No. 3
; ============================================
; autor(es):
; grado:
; función: crea esfera estática con una luz apuntándole
; fecha: agosto-19-2023
; lenguaje: BLITZ3D
; archivo de disco: "primitiva2.bb"
; ============================================
Graphics3D 640,480,32
camera = CreateCamera()
MoveEntity camera,0,0,-3
bola = CreateSphere()
luz1 = CreateLight(1) ;Puede cambiar el valor a 2 y 3 para ver el efecto
MoveEntity luz1,5,0,0
PointEntity luz1,bola ; hace que la luz le apunte al balón
;bucle infinito con WHILE - WEND
While Not KeyDown(1)
UpdateWorld
RenderWorld
Flip
Wend
End
PROGRAMA No. 4
; =========================================
; autor(es):
; grado:
; función: crea cono con luz apuntándole
; fecha: agosto-19-2023
; lenguaje: BLITZ3D
; archivo de disco: "primitiva3.bb"
; =========================================
Graphics3D 640,480,16
camera = CreateCamera()
MoveEntity camera,0,0,-3
cono1 = CreateCone()
luz1 = CreateLight(3)
MoveEntity luz1,5,0,0
PointEntity luz1,cono1
; Bucle infinito con While - wend
While Not KeyDown(1)
UpdateWorld
RenderWorld
Flip
Wend
End
PROGRAMA #5
COLOCANDOLE MOVIMIENTO DE ROTACIÓN A LAS FIGURAS 3D
; ==========================================
; autor(es):
; grado:
; funcion: crea cono con luz apuntándole
; con giro en el eje Y
; fecha: agosto-19-2023
; lenguaje: BLITZ3D
; archivo de disco: "primitiva3.bb"
; ===========================================
Graphics3D 640,480,16 ; Ancho: 640, Alto: 480, color 16 bits
camera = CreateCamera()
MoveEntity camera,0,0,-3
cono1 = CreateCone()
luz1 = CreateLight(3)
MoveEntity luz1,5,0,0 ; mueve la luz1 a posición x=5, y=0, z=0
PointEntity luz1,cono1
While Not KeyDown(1)
TurnEntity cono1,0,1,0 ; gira el cono. Por cada repetición del bucle se
;incrementa el valor Y en 0.1
; X=0 Y=0.1 Z=0
UpdateWorld
RenderWorld
Flip
Wend
End
PROGRAMA #6
COLOCANDOLE MOVIMIENTO Y TEXTURA A UNA FIGURA 3D
; ==============================================================
; autor:
; grado:
; función: crea primitiva esfera con una textura y lo gira en eje Y
; fecha: abril-30-2023
; lenguaje: BLITZ3D
; archivo de disco: "primitiva_1.bb"
; =============================================================
Graphics3D 640,480,32,1 ;ancho=640, alto=480,
;32=Color a 32 bits, 1= pantalla completa
SetBuffer BackBuffer()
camera=CreateCamera()
light=CreateLight()
tierra=CreateSphere() ; crea esfera y la guarda en variable "tierra"
PositionEntity tierra,0,0,5
aspecto=LoadTexture("Earth.jpg") ;carga textura "Earth.jpg" y la guarda en
;en la variable "aspecto"
EntityTexture tierra, aspecto ; a entidad "tierra" colocar textura almacenada
; en variable "aspecto"
; inicia bucle infinito WHILE - WEND
; por cada repetición del bucle la variabl Y, disminuye en -1
While Not KeyDown(1)
TurnEntity tierra,0,1,0 ;giro antihorario con y=1
;giro horario y=-1
RenderWorld
Flip
Wend
End
TEXTURAS PARA OBJETOS 3D
CESPED2.PNG
PROGRAMA #7
; ==============================================================
; autor:
; grado:
; función: crea primitiva CUBO con una textura para madera y la gira en eje Y
; fecha: septiembre-24-2023
; lenguaje: BLITZ3D
; archivo de disco: "cubo_textura.bb"
; =============================================================
Graphics3D 640,480,32,1 ;ancho=640, alto=480,
;32=Color a 32 bits, 1= pantalla completa
SetBuffer BackBuffer()
camera=CreateCamera()
light=CreateLight()
caja=CreateCube() ; crea entidad cubo y la guarda en variable "caja"
PositionEntity caja,0,0,5
madera=LoadTexture("WCRATE.JPG") ;carga textura "wcrate,jpg" y la guarda en
;en la variable "madera"
EntityTexture caja, aspecto ; a entidad "caja" colocar textura almacenada
; en variable "madera"
; inicia bucle infinito WHILE - WEND
; por cada repetición del bucle la variabl Y, disminuye en -1
While Not KeyDown(1)
TurnEntity caja,0,1,0 ;giro antihorario con y=1
;giro horario y=-1
RenderWorld
Flip
Wend
End
No hay comentarios:
Publicar un comentario
Porque en mi llevo el caos puedo hacer una estrella.