Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Blitz3D

Ответ
 
Опции темы
Старый 22.09.2010, 20:16   #1
Colossus
Разработчик
 
Аватар для Colossus
 
Регистрация: 12.10.2008
Адрес: Самара
Сообщений: 437
Написано 55 полезных сообщений
(для 92 пользователей)
Инфракрасное Зрение (ака у терминатора)

решил сделать зрение терминатора, сделал, но работает некорректно...

вываливаю медию и код - качать тут http://webfile.ru/4755440

подскажите ошибку в связи которой произходит то что вы увидите при запуске... эффект можно сказать работает но некорректно

по возможности напишите корректный код если можно))
__________________
Пекарня: Intel Core i3 - 3240(3.40Ghz), ram 8 gb, video Gigabyte Nvidia GeForce GTX 650 1gb

Лэптоп : Intel Core i3 - 2365(1.40Ghz), ram 4gb, video Int Intel HD3000(512mb)

Мой набор: 3ds Max 9 + Xors3d(Blitz3d) + Photoshop
(Offline)
 
Ответить с цитированием
Старый 22.09.2010, 20:24   #2
Randomize
[object Object]
 
Аватар для Randomize
 
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,355
Написано 2,471 полезных сообщений
(для 6,852 пользователей)
Ответ: Инфракрасное Зрение (ака у терминатора)

c\Poly=CreateCube() 
Cube?

Function CreateCamQuad(surf%, zoom# = 1.0, near# = 1.0)
    
Local xscr%, yscr%, xcnt%, ycnt%, xpos#, ypos#, i%[4]
    
;размеры экрана
    xscr 
GraphicsWidth()
    
yscr GraphicsHeight()
    ;
координаты центра экрана
    xcnt 
xscr Shr 1
    ycnt 
yscr Shr 1
    
;проекция левого верхнего угла
    xpos 
= (   xcnt) * near / +zoom xcnt
    ypos 
= (   ycnt) * near / -zoom xcnt
    i
[0] = AddVertex(surfxposypos0.00.00.0)
    ;
проекция правого верхнего угла
    xpos 
= (xscr xcnt) * near / +zoom xcnt
    ypos 
= (   ycnt) * near / -zoom xcnt
    i
[1] = AddVertex(surfxposypos0.00.00.0)
    ;
проекция правого нижнего угла
    xpos 
= (xscr xcnt) * near / +zoom xcnt
    ypos 
= (yscr ycnt) * near / -zoom xcnt
    i
[2] = AddVertex(surfxposypos0.00.00.0)
    ;
проекция левого нижнего угла
    xpos 
= (   xcnt) * near / +zoom xcnt
    ypos 
= (yscr ycnt) * near / -zoom xcnt
    i
[3] = AddVertex(surfxposypos0.00.00.0)
    
AddTriangle(surfi[0], i[1], i[2])
    
AddTriangle(surfi[2], i[3], i[0])
    Return 
i[0]
End Function 
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 3070
AMD Ryzen 7 3800X 4.3Ghz; 64Gb; Nvidia 1070Ti
AMD Ryzen 7 1700X 3.4Ghz; 8Gb; AMD RX 570
AMD Athlon II 2.6Ghz; 8Gb; Nvidia GTX 750 Ti
(Offline)
 
Ответить с цитированием
Старый 22.09.2010, 20:40   #3
Program23
Бывалый
 
Аватар для Program23
 
Регистрация: 26.04.2009
Адрес: Россия, Уфа
Сообщений: 680
Написано 182 полезных сообщений
(для 406 пользователей)
Ответ: Инфракрасное Зрение (ака у терминатора)

А AmbientLight использовать не проще ли?
И для усиления эффекта,поставить спрайт,текстуру перед камерой:Noise.tga
)))Эффект тот же,а скорость выше.
--------------------------------------
Вот я как-бэ исправил,по-моему нормально вышо))))можешь там амбиентлайт поменять как тебе надобнее.
Вот подкорректированный код:
Graphics3D 1280,1024,32,2
AmbientLight 255,255,255
SetBuffer BackBuffer()
HidePointer

AmbientLight 255,83,83

Global Camera=CreateCamera()

cube=CreateCube()
PositionEntity cube,0,0,0
cubetex=LoadTexture("GameMedia\txtr_215.jpg")
EntityTexture cube,cubetex


Global Noise%=LoadTexture("GameMedia\Noise.tga",3)

plane=CreatePlane()
planetex=LoadTexture("GameMedia\txtr_173.jpg")
EntityTexture plane,planetex


LoadCamera(0,5,-10)

While Not KeyHit(1)

UpdateCamera()
UpdateWorld
RenderWorld
	If FPSTimer>MilliSecs() Then
	fpsc=fpsc+1
	Else
	fps=fpsc*2
	fpsc=0
	FPSTimer=MilliSecs()+500
	EndIf

Text 100,85,"FPS: "+fps+". Tris rendered:"+TrisRendered()

Flip
Wend
End

Type Camera
	Field Camera%,Poly%,Render%
	Field Mx#,My#
	Field Noise%
End Type 

Function LoadCamera(x,y,z)
	c.Camera = New Camera
	c\Camera = Camera
	PositionEntity Camera,x,y,z
		Mx#=MouseXSpeed()
		My#=MouseYSpeed()
		c\Noise=Noise
	    c\Poly=CreateCube()
     	EntityParent c\Poly,c\Camera
    	ScaleEntity c\Poly,2,2,.1
	    PositionEntity c\Poly,0,0,2
        EntityTexture c\Poly,c\Noise
	     TextureBlend c\Noise,3
End Function 

Function UpdateCamera()
	For c.Camera = Each Camera
		Mx#=MouseXSpeed()
		My#=MouseYSpeed()
		RotateEntity c\Camera,EntityPitch(c\Camera)+My#/2,EntityYaw(c\Camera)-Mx#/2,0
		MoveMouse GraphicsWidth()/2,GraphicsHeight()/2
	Next 
End Function
__________________
Фриланс:
Freelancer.com
Upwork
(Offline)
 
Ответить с цитированием
Старый 22.09.2010, 21:26   #4
Colossus
Разработчик
 
Аватар для Colossus
 
Регистрация: 12.10.2008
Адрес: Самара
Сообщений: 437
Написано 55 полезных сообщений
(для 92 пользователей)
Ответ: Инфракрасное Зрение (ака у терминатора)

Спасибо но получилось стремно)) а вот когда делаешь по моему там чисто все красночерное как у Термов
__________________
Пекарня: Intel Core i3 - 3240(3.40Ghz), ram 8 gb, video Gigabyte Nvidia GeForce GTX 650 1gb

Лэптоп : Intel Core i3 - 2365(1.40Ghz), ram 4gb, video Int Intel HD3000(512mb)

Мой набор: 3ds Max 9 + Xors3d(Blitz3d) + Photoshop
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 15:33.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com