|
18.01.2009, 00:17
|
#16
|
ПроЭктировщик
Регистрация: 25.12.2008
Сообщений: 103
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: FPS +(
проэкт
Include "bones.bb"
Include "function.bb"
Global postroika
Global nameb$
Graphics3D 1024,768,16,1
SetBuffer BackBuffer()
camera = CreateCamera()
CameraRange camera,1,10000000
PositionEntity camera,0,3000,0
RotateEntity camera,90,0,0
curpoint=LoadImage("data/dyspley/curpoint.bmp")
cursor=LoadImage("data/dyspley/cursor.bmp")
Include "eartch.bb"
;----------------------------------------------------------------------ÏËÀÍÅÒÀÐÍÛÉ ÑÈÑÒÐÅÉ È ÊÍÎÏÊÈ------------------------------------------------------------------
zemtrey=LoadImage("data/dyspley/nazemle/systrey.bmp")
zemexit=LoadImage("data/dyspley/nazemle/exit.bmp")
zembuild=LoadImage("data\planetobj\house\basa.bmp")
zembuilddom=LoadImage("data\planetobj\house\dom.bmp")
zembuildzavod=LoadImage("data\planetobj\house\zavod.bmp")
zembuildlaboratory=LoadImage("data\planetobj\house\laboratory.bmp")
zembuildangar=LoadImage("data\planetobj\house\angar.bmp")
zembuildmoney=LoadImage("data\planetobj\house\money.bmp")
;çàâîä
zemzavod=LoadImage("data\planetobj\house\zavod\zavod.bmp")
zavodraketa=LoadImage("data\planetobj\house\zavod\raketa.bmp")
zavodlaser=LoadImage("data\planetobj\house\zavod\laser.bmp")
zavodatom=LoadImage("data\planetobj\house\zavod\atomraketa.bmp")
zavodraketavid=LoadImage("data\planetobj\house\zavod\raketavid.bmp")
zavodlaservid=LoadImage("data\planetobj\house\zavod\laservid.bmp")
zavodatomvid=LoadImage("data\planetobj\house\zavod\atomraketavid.bmp")
;----------
;--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
;----------------------------------------------------------------------ÐÀÄÀÐ---------------------------------------------------------------------------------------------
radarplus=LoadImage("data/dyspley/plus.bmp")
radarminus=LoadImage("data/dyspley/minus.bmp")
radarramka=LoadImage("data/dyspley/radar.bmp")
viewramka=LoadSprite("data/dyspley/ramka.bmp")
;ScaleSprite viewramka,1024+2600,768+2300
;radarcam = CreateCamera()
;CameraRange radarcam,1,10000000
;CameraViewport radarcam,6,26,239,219
;PositionEntity radarcam,0,10000,0
;RotateEntity radarcam,90,0,0
;--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
;-----------------------------------------------------------------------ñîçäàíèå ïëàíåò---------------------------------------------------------------------------------
suntex=LoadTexture("data\planettex\sun.bmp")
zemlatex=LoadTexture("data\planettex\Earth.JPG")
lunatex=LoadTexture("data\planettex\MOON.JPG")
marstex=LoadTexture("data\planettex\mars.jpg")
sun=addplanet(sun,300,suntex,0,0,0)
zemla=addplanet(zemla,300,zemlatex,0,0,3000)
NameEntity zemla,"zemla"
EntityType zemla,2
EntityPickMode zemla,2
luna=addplanet(luna,50,lunatex,0,0,3500)
mars=addplanet(mars,300,marstex,0,0,-3500)
RotateEntity zemla,25,0,0
RotateEntity mars,90,0,0
;EntityParent zemla,sun
;---------------------------------------------------------------------------------------------------------------------------------------------------------------------------
light = CreateLight()
stroim = 0
postroika=0
nazemle = 0
fntArial=LoadFont("Arial",15)
naselenie=10
raket=0
;-------------èññëåäîâàíèÿ--------------------------
labraketa=0
lablaser=0
labatom=0
;------------------------------------------------
;-------------Ðåñóðñû--------------------------
gold=1000000
wood=0
rock=0
neft=0
atomn=10000
;------------------------------------------------
;---------------------------------------------------------------ÃËÀÂÍÛÉ ÖÈÊË----------------------------------------------------------------
Repeat
;nameb$=""
EntityParent zemla,sun
EntityParent luna,zemla
EntityParent mars,sun
TurnEntity zemla,0,-0.5,0
TurnEntity sun,0,+0.1,0
If nazemle = 0
If MouseX() >= 1000 Then MoveEntity camera,+50,0,0
If MouseX() <= 4 Then MoveEntity camera,-50,0,0
If MouseY() >= 730 Then MoveEntity camera,0,-50,0
If MouseY() <= 10 Then MoveEntity camera,0,+50,0
EndIf
If nazemle = 1
If MouseX() >= 1000 Then MoveEntity camera,+5,0,0
If MouseX() <= 4 Then MoveEntity camera,-5,0,0
If MouseY() >= 730 Then MoveEntity camera,0,-5,-5
If MouseY() <= 10 Then MoveEntity camera,0,+5,+5
EndIf
;If MouseHit(1) = 1 Then PositionEntity viewramka,EntityX(camera),EntityY(camera)-3000,EntityZ(camera)
PositionEntity viewramka,EntityX(camera),EntityY(camera)-3000,EntityZ(camera)
;----------------------------------------------------Âûáèðàåì îáúåêò------------------------------------------------------------------------------
If MouseHit(1) And CameraPick(camera,MouseX(),MouseY()) <>0 And nazemle = 0 Then
who=CameraPick(camera,MouseX(),MouseY())
videlname$=EntityName(who)
If videlname$ = "zemla" And nazemle = 0
nazemle = 1
PositionEntity camera,450,100300,250
RotateEntity camera,45,45,0
;CameraViewport radarcam,0,0,1024,768
videlname$=""
EndIf
EndIf
If MouseDown(1) And CameraPick(camera,MouseX(),MouseY()) <>0 And nazemle = 1 And postroika=0 Then
who=CameraPick(camera,MouseX(),MouseY())
videlname$=EntityName(who)
If videlname$="basa"
objname$="Áàçà"
videlstat=1
EndIf
For a.dom=Each dom
If who=a\dom_id
If a\dom_seartch$ = "zavod"
videlname$="zavod"
EndIf
If a\dom_seartch$ = "laboratory"
videlname$="labora"
EndIf
EndIf
Next
EndIf
;-------------------------------------------------------------------------------------------------------------------------------------------------------
;-------------------------------------------------------------Òåõíîëîãèè---------------------------------------------------------------------------
;-----------------------------------------------------------------------------------------------------------------------------------------------------
;-------------------------------------------------------------Òåõíèêà---------------------------------------------------------------------------
;-----------------------------------------------------------------------------------------------------------------------------------------------------
;-------------------------------------------------------------îðóæèå---------------------------------------------------------------------------
;-----------------------------------------------------------------------------------------------------------------------------------------------------
;------------------------------------------------------------Ñòðîèì îáúåêòû------------------------------------------------------------------------
If builddom=1;äîì----------------------------------
build(postroika,camera)
rasto=EntityPick(postroika,100)
If rasto > 0
dis=EntityDistance(postroika,rasto)
EndIf
If MouseDown(1) = 1
If EntityPick (postroika,200) = 0
gold=gold-5000
naselenie=naselenie+15
builddom=0
EntityPickMode terrain,0
EntityAlpha postroika,1
postroika=0
Else
nameb$="ñëèøêîì áëèçêî ê îáúåêòàì"
EndIf
EndIf
If MouseDown(2)
videlname$=""
builddom=0
EntityPickMode terrain,0
For a.dom=Each dom
If postroika=a\dom_id Then Exit
Next
FreeEntity postroika
Delete a
postroyka=0
EndIf
EndIf;---------------------------------------------------------
If buildzavod=1;çàâîä---------------------------------
build(postroika,camera)
rasto=EntityPick(postroika,100)
If rasto > 0
dis=EntityDistance(postroika,rasto)
EndIf
If MouseDown(1) = 1
If EntityPick (postroika,200) = 0
gold=gold-10000
buildzavod=0
EntityPickMode terrain,0
EntityAlpha postroika,1
postroika=0
okzavod=1
Else
nameb$="ñëèøêîì áëèçêî ê îáúåêòàì"
EndIf
EndIf
If MouseDown(2)
videlname$=""
buildzavod=0
EntityPickMode terrain,0
For a.dom=Each dom
If postroika=a\dom_id Then Exit
Next
FreeEntity postroika
Delete a
postroyka=0
EndIf
EndIf;---------------------------------------------------------
If buildlab = 1;ëàáàðàòîðèÿ---------------------------------
build(postroika,camera)
rasto=EntityPick(postroika,100)
If rasto > 0
dis=EntityDistance(postroika,rasto)
EndIf
If MouseDown(1) = 1
If EntityPick (postroika,200) = 0
gold=gold-15000
atomn=atomn-500
buildlab=0
EntityPickMode terrain,0
EntityAlpha postroika,1
postroika=0
oklab=1
Else
nameb$="ñëèøêîì áëèçêî ê îáúåêòàì"
EndIf
EndIf
If MouseDown(2)
videlname$=""
buildlab=0
EntityPickMode terrain,0
For a.dom=Each dom
If postroika=a\dom_id Then Exit
Next
FreeEntity postroika
Delete a
postroyka=0
EndIf
EndIf;---------------------------------------------------------
;-------------------------------------------------------------------------------------------------------------------------------------------------------
RenderWorld
;--------------------------------------------------------------------ÐÅÍÄÅÐ----------------------------------------------------------------------------
DrawImage curpoint,MouseX(),MouseY()
Text 500,20, "Âûáðàíà: "+videlname$
;----------------------------------------ÑÈÑÒÅÌÍÛÉ ÒÐÅÉ------------------------------------------------------------------------------------------------
If nazemle = 1
DrawImage zemtrey,0,768-200
If button(curpoint,zemexit,0,568,16,11,"Âûõîä â êîñìîñ") = 1
nazemle = 0
PositionEntity camera,0,3000,0
RotateEntity camera,90,0,0
EndIf
If videlname$="basa"
DrawImage zembuild,229,568+68
If MouseDown(2)
videlname$=""
EndIf
If button(curpoint,zembuilddom,229,636,0,0,"Æèëîé äîì - 5000 çîëîòà") = 1
If gold >=5000
EntityPickMode terrain,2
builddom=1
a.dom = New dom
a\dom_id = LoadMesh("data\planetobj\house\dom\STORY_M.3DS")
postroika=a\dom_id
a\dom_name = "Äîì"
a\dom_helsa = "100"
a\dom_seartch = "dom"
PositionEntity a\dom_id,300,100020,300
EntityPickMode a\dom_id,2
ScaleEntity a\dom_id,0.01,0.01,0.01
EntityAlpha a\dom_id,0.4
stroim = 1
Else
nameb$="Íå õâàòàåò ðåñóðñîâ"
EndIf
EndIf
If button(curpoint,zembuildzavod,229,636,62,0,"Çàâîä - 10000 çîëîòà") = 1
If gold >=10000
buildzavod=1
EntityPickMode terrain,2
a.dom = New dom
a\dom_id = LoadMesh("data\planetobj\house\zavod\SAWMILL_.3DS")
postroika=a\dom_id
a\dom_name = "Çàâîä"
a\dom_helsa = "100"
a\dom_seartch$ = "zavod"
PositionEntity a\dom_id,300,100020,300
EntityPickMode a\dom_id,2
ScaleEntity a\dom_id,0.01,0.01,0.01
EntityAlpha a\dom_id,0.4
stroim = 1
Else
nameb$="Íå õâàòàåò ðåñóðñîâ"
EndIf
EndIf
If button(curpoint,zembuildlaboratory,229,636,125,0,"Ëàáîðàòîðèÿ - 15000 çîëîòà, 500 àòîìîâ") = 1
If gold >=15000 And atomn >= 500
buildlab=1
EntityPickMode terrain,2
a.dom = New dom
a\dom_id = LoadMesh("data\planetobj\house\labaratory\KEHL_L.3DS")
postroika=a\dom_id
a\dom_name = "Ëàáîðàòîðèÿ"
a\dom_helsa = "100"
a\dom_seartch$ = "laboratory"
PositionEntity a\dom_id,300,100040,300
EntityPickMode a\dom_id,2
ScaleEntity a\dom_id,0.05,0.05,0.05
EntityAlpha a\dom_id,0.4
stroim = 1
Else
nameb$="Íå õâàòàåò ðåñóðñîâ"
EndIf
EndIf
If button(curpoint,zembuildangar,229,636,0,55,"Àíãàð - 12000 çîëîòà") = 1
EndIf
If button(curpoint,zembuildmoney,229,636,62,55,"Áàíê - 7000 çîëîòà") = 1
EndIf
EndIf;Ðèñóåò ïàíåëü
;----------------------ðèñóåì ïàíåëü çàâîäà------------------
If videlname$="zavod"
DrawImage zemzavod,229,568+68
If MouseDown(2)
videlname$=""
EndIf
If labraketa=1
DrawImage zavodraketa,229+4,636+7
If button(curpoint,zavodraketavid,229,636,4,7,"Ðàêåòà - 2500 çîëîòà è 230 íåôòè ") = 1
EndIf
EndIf
If lablaser=1
DrawImage zavodlaser,229+62+4,636+7
If button(curpoint,zavodlaservid,229,636,62+4,7,"Ëàçåðíûé çàðÿä - 5000 çîëîòà è 300 àòîìîâ") = 1
EndIf
EndIf
If labatom=1
DrawImage zavodatom,229+125+4,636+7
If button(curpoint,zavodatomvid,229,636,125+4,7,"Àòîìíàÿ ðàêåòà - 18000 çîëîòà, 800 íåôòè è 1500 àòîìîâ") = 1
EndIf
EndIf
EndIf
;-------------------------------------------------------------------
;----------------------ðèñóåì ïàíåëü ëàáîðàòîðèè------------------
If videlname$="labora"
DrawImage zemzavod,229,568+68
If MouseDown(2)
videlname$=""
EndIf
If labraketa=0
DrawImage zavodraketa,229+4,636+7
If button(curpoint,zavodraketavid,229,636,4,7,"Ðàêåòà - 5000 çîëîòà è 25 íàñåëåíèÿ") = 1
If gold >=5000 And naselenie >=25
gold=gold-5000
labraketa=1
EndIf
EndIf
EndIf
If lablaser=0
DrawImage zavodlaser,229+62+4,636+7
If button(curpoint,zavodlaservid,229,636,62+4,7,"Ëàçåðíûé çàðÿä - 8000 çîëîòà 57 íàñåëåíèÿ") = 1
If gold >=8000 And naselenie >=57
lablaser=1
EndIf
EndIf
EndIf
If labatom=0
DrawImage zavodatom,229+125+4,636+7
If button(curpoint,zavodatomvid,229,636,125+4,7,"Àòîìíàÿ ðàêåòà - 28000 çîëîòà 160 íàññåëåíèÿ") = 1
If gold >=28000 And naselenie >=160
labatom=1
EndIf
EndIf
EndIf
EndIf
;-------------------------------------------------------------------
Text 959,568+181,gold
Text 879,568+181,wood
Text 799,568+181,rock
Text 719,568+181,atomn
Text 639,568+181,atomnneft
Text 35,568+52,naselenie
Text 151,568+52,raket
Text 228,768-200+181,nameb$
EndIf
;-------------------------------------------------------------------------------------------------------------------------------------------------------------------
;--------------------------------------------------------------------Çóì ðàäàðà-----------------------------------------------------------------------------------
If nazemle = 0
;For y = 1 To 500
;Plot Rnd(6,243),Rnd(26,243)
;Next
DrawImage radarramka,0,0
If button(curpoint,radarplus,0,0,227,6,"") = 1 And EntityY(camera) > 4000
MoveEntity camera,0,0,+50
EndIf
If button(curpoint,radarminus,0,0,207,6,"") = 1 And EntityY(camera) < 50000
MoveEntity camera,0,0,-50
EndIf
EndIf
;--------------------------------------------------------------------------------------------------------------------------------------------------------------------
Text 300,300,fps
frame = frame + 1
If MilliSecs() >= tstart Then
fps = frame
frame = 0
tstart = MilliSecs() + 1000
EndIf
DrawImage cursor,MouseX(),MouseY()
Flip
Until KeyHit(1)
End
|
(Offline)
|
|
18.01.2009, 00:37
|
#17
|
Гигант индустрии
Регистрация: 14.12.2005
Сообщений: 2,785
Написано 1,183 полезных сообщений (для 4,437 пользователей)
|
Ответ: FPS +(
километр кода без ресурсов...
И что нам с ним делать ?
Разводить кофейную гущу и гадать ?
запомни несколько правил
1 количество полигонов в кадре. Лучше если оно будет не более 100 000. Лучше меньше
2 количество объектов в кадре. Не более 500-700
3 количество разных материалов в сцене. не более 50
И будет тебе высокий фпс и мир во всем мире
__________________
|
(Offline)
|
|
Эти 2 пользователя(ей) сказали Спасибо tormoz за это полезное сообщение:
|
|
18.01.2009, 00:48
|
#18
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: FPS +(
4. количество камер - 1 штука.
ты ее случайно в цикле не создаешь?
|
(Offline)
|
|
18.01.2009, 00:49
|
#19
|
Ференька
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений (для 15,675 пользователей)
|
Ответ: FPS +(
Ой, если там километровые исходники, то вряд ли кто-то станет копаться (уж точно не я)
Но замеры на свуоей машине скажу
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**
* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена
|
(Offline)
|
|
18.01.2009, 00:51
|
#20
|
ПроЭктировщик
Регистрация: 25.12.2008
Сообщений: 103
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: FPS +(
Сообщение от HolyDel
4. количество камер - 1 штука.
ты ее случайно в цикле не создаешь?
|
не она у меня стояла на радаре но я убрал ибо тормозит игру
|
(Offline)
|
|
18.01.2009, 00:52
|
#21
|
ПроЭктировщик
Регистрация: 25.12.2008
Сообщений: 103
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: FPS +(
Сообщение от ABTOMAT
Ой, если там километровые исходники, то вряд ли кто-то станет копаться (уж точно не я)
Но замеры на свуоей машине скажу
|
да там киллометровые исходники я про то и говорю что это бесполезно +)
|
(Offline)
|
|
18.01.2009, 01:22
|
#22
|
Злобный Админ
Регистрация: 04.09.2005
Сообщений: 5,926
Написано 3,415 полезных сообщений (для 9,330 пользователей)
|
Ответ: FPS +(
А ещё попробуй закаментить все строчки начинающиеся с "Text".
Эта команда иногда феерично кушает фпс почём зря.
__________________
|
(Offline)
|
|
Эти 2 пользователя(ей) сказали Спасибо SBJoker за это полезное сообщение:
|
|
19.01.2009, 00:07
|
#23
|
ПроЭктировщик
Регистрация: 25.12.2008
Сообщений: 103
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: FPS +(
кажется с ФПС разобрался
это из-за домов было и пару цыклов переправил
еще вопросик есть у кого нить объекты домов заводов ?
|
(Offline)
|
|
19.01.2009, 02:09
|
#24
|
злобный флудер
Регистрация: 10.07.2007
Сообщений: 2,585
Написано 789 полезных сообщений (для 1,476 пользователей)
|
Re: FPS +(
воспользуйся какойнить простой прогой для оптимизаций моделей, она эти домики поправит )))
|
(Offline)
|
|
19.01.2009, 19:31
|
#25
|
ПроЭктировщик
Регистрация: 25.12.2008
Сообщений: 103
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: Re: FPS +(
Сообщение от NitE
воспользуйся какойнить простой прогой для оптимизаций моделей, она эти домики поправит )))
|
щя попробуем )
|
(Offline)
|
|
22.01.2009, 02:11
|
#26
|
Ференька
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений (для 15,675 пользователей)
|
Ответ: FPS +(
В 3Д Максе есть модификатор Optimize. Правда, работает как-то кривовато... Но видимо я просто плохо рылся в настройках.
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**
* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена
|
(Offline)
|
|
22.01.2009, 02:46
|
#27
|
scientist.alien
Регистрация: 12.02.2007
Сообщений: 2,098
Написано 1,030 полезных сообщений (для 2,593 пользователей)
|
Ответ: FPS +(
Не, он действительно криво работает. Все дело в том, что машынные оптимизаторы никогда не дадут такой чистоты и правильности сетки, как правленная руками сетка.
__________________
Public service announcement: вы можете заблокировать отображение сообщений определённого пользователя, добавив его ник в список игнорируемых.
Tau lab. We LOVE you. We MADE you.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
22.01.2009, 02:53
|
#28
|
Зануда с интернетом
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений (для 20,935 пользователей)
|
Ответ: FPS +(
Тьюринг был бы рад
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
|
(Offline)
|
|
Эти 2 пользователя(ей) сказали Спасибо impersonalis за это полезное сообщение:
|
|
19.09.2009, 22:49
|
#29
|
Оператор ЭВМ
Регистрация: 17.09.2009
Адрес: Казахстан -> Рудный
Сообщений: 42
Написано 10 полезных сообщений (для 23 пользователей)
|
Ответ: FPS +(
Есть плюгин Polygon Cruncher завётся так он поможет! оптимизить как надо плюс валом настроек, откуда скачать не помню, гуглянка поможет, да и на форуме помойму кто то выкладывал.
__________________
Проект:
Название: Solium - Last War.
Жанр: Онлайн шутер с элементами стратегии.
Завершён: 45%
Ведётся работа над сервером игры... (20 %)
Сайт проекта: http://shwl-center.at.ua/
===========
Дайте сказать немому...
===========
"Да, ты можешь использовать готовые решения, и всё будет работать, но МОЗГОВ тебе от этого, не прибавится!"
===========
Помните! Ничто не защищает Ваши зубы 24 часа в сутки так хорошо, как уважительное отношение к окружающим!
|
(Offline)
|
|
19.09.2009, 22:51
|
#30
|
Бывалый
Регистрация: 17.05.2009
Адрес: Днепропетровск
Сообщений: 672
Написано 180 полезных сообщений (для 428 пользователей)
|
Ответ: FPS +(
Люди вот у меня тож проблема с завышение фпс о_О
1 количество полигонов в кадре. Лучше если оно будет не более 100 000. Лучше меньше
|
Полигонов в кадре не более 5 000 фпс 20....
+ Меню в с 5 кнопками фпс 14.....
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 19:09.
|