@DB_Newbie
We are trying to help you somehow.
In this example, I show you what Green Gandalf means.
Execute the code, and look how you torch illuminates the ground and objects.
Then change the line 11, where we create the matrix:
make matrix 1,100,100,30,30 you have to change for this one:
make matrix 1,100,100,130,130
Have a look again and you will see the circular light on the ground.
You will notice that the box don“t looks well light,as it has just 6 faces and 12 vertex.The sphere has much more faces and vertex, and looks ok.I hope this piece of code can help to you.
autocam off
sync on
hide light 0
set ambient light 0
ink rgb(0,100,0),1
box 0,0,100,100
ink rgb(0,90,0),1
box 20,20,80,80
get image 1,0,0,100,100,1
make matrix 1,100,100,30,30
prepare matrix texture 1,1,1,1
make light 1
set spot light 1,0,60
set light range 1,100
make light 2
set spot light 2,0,20
set light range 2,100
make object sphere 1,20,20,20:position object 1,50,0,50
texture object 1,1:scale object texture 1,10,10
make object cylinder 2,10
position object 2,60,4,30
texture object 2,1
make object box 3,10,10,10
position object 3,15,5,30
texture object 3,1
do
ink rgb(255,255,255),1
fps$="DBPro Fps: "+str$(screen fps())
set cursor 5,400:print fps$
color backdrop rgb(10,10,10)
if upkey() THEN x#=NEWXVALUE(x#,a#,0.1):if upkey() then z#=NEWZVALUE(z#,a#,0.1)
if downkey() THEN x#=NEWXVALUE(x#,a#,-0.1):if downkey() then z#=NEWZVALUE(z#,a#,-0.1)
a#=wrapvalue(a#+mousemovex()/2)
cam#=wrapvalue(cam#+mousemovey()/2)
rotate camera cam#,a#,0
rotate light 1,cam#,a#,0
rotate light 2,cam#,a#,0
position camera x#,y#+10,z#
position light 1,x#,y#+10,z#
position light 2,x#,y#+10,z#
sync
loop
I'm not a grumpy grandpa
