forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Проекты на Blitz3D (http://forum.boolean.name/forumdisplay.php?f=14)
-   -   Bomberman_Standard_Edition (http://forum.boolean.name/showthread.php?t=79)

Fant 26.03.2006 14:06

Цитата:

Originally posted by Maxus@25.3.2006, 16:15
А не проще по вектору перемешать объек из клетки в клетку?

Может и проще,но я не знаю как! Покажите пример и я может по вектору буду!

Fant 31.03.2006 01:52

Вообщем сделал я кое-как передвижение!

Очень прошу оценить его!

И...это лучшее, что я придумал!!! Помогите мне пожалуйста сделать код лучше, так как этот код почему-то очень много ФПС жрет!!!

Я отметил место, где работал, как ";НЕХОРОШИЙ КОД+++++++++++++++++++++++="


Ну а баг, о котором я писал выше, я никак не могу исправить...это уже как бич...никак! ничего не могу сделать!!!!!!! :'((

tormoz 31.03.2006 04:53

Если ты думаешь, что кто то будет комплектовать твой код ресурсами. то ты обольщаешься :)
выкладывай все полностью. либо правь код так. чтобы он запускался без ресурсов

Fant 31.03.2006 11:05

Цитата:

Originally posted by tormoz@31.3.2006, 2:53
Если ты думаешь, что кто то будет комплектовать твой код ресурсами. то ты обольщаешься :)
выкладывай все полностью. либо правь код так. чтобы он запускался без ресурсов

Вы, наверное не очень внимательно пост мой прочитали. Ресурсы я выкладываю только тогда, когда есть что-то новенькое.

Вот ссылка:
http://community.boolean.name/index.php?ac...ype=post&id=826
Здесь как раз я ресурсы выложил! Вы скачиваете ресурсы (там же код) и просто на старый код кидаете новый! И...
Прикиньте хотя бы, почему у меня ужасное падение ФПС...наверное много расчетов?
Но не мог же ФПС упасть из-за новых двух глобальных...не знаю вообщем.

tormoz 31.03.2006 18:21

Все отлично работает
фпс 210
количество текста уменьши, может у тебя видюха его не любит (дрова старые)

Fant 31.03.2006 20:34

То есть движение сделано на отлично? Или что-то нужно доработать?
Подскажите, может его стоит "оптимизировать"? (если нужно, разумеется)
Если нужно оптимизировать, то хотя бы покажите как лучше!

Вообщем одни "?" :@

Но проект-то стоять не должен ;-)

tormoz 01.04.2006 01:54

движение нормальное.
камера отвратительная
клавиши управления сделай стандартные (стрелки и всда)
И начинай делать графику. То что есть - ваще непонятно. нафиг столько ресурсов ?
Я процедурно бы лучше внешний вид сделал. :)
Главное - вид камеры сделай.

Fant 01.04.2006 12:47

2Tormoz
Делать я все буду вечером, но я не совсем понял:
1)Камеру я старался делать. Вы точно все возможности использовали? 1,2,3,7,9 на дополнительной клаве, колесико мыши, левая и правая кнопка мыши. - если все использовали, то подскажите что мне там редактировать-то хоть, а то по-моему камера - super!
2) Клавиши это 3 секунды делов...я их изменю, базара нет) Но погоды это не сделает, все-равно в проекте будет "меню изменения клавиш" Но как уже сказал сделаем!
3)Графику? Исключено...делал я как-то графику и в максе, и в фотошопе плагинами мутил и понял, что худо выходит) насчет графики у меня созрел хитрый план! Я сеструху сдам учиться (она сама хочет) Corel Draw (4 недели курс) и потом на 3DMAx (если она успешно закончит Corel Draw) и будет графика, а пока НУЖЕН ХУДОЖНИК! (или ХУДОЖНИЦА) если вы таких знаете, посоветуйте их мне! Я с радостью свяжусь и может "сработаемся"
4)Ресуры это чисто для "примера", но теперь я понимаю, что их нужно "урезать" и делать как можно больше средставми блиц (что бы проетк меньше весил, и средства блиц не так уж и плохи, так что можно сделать "даже очень ничего")
5) Я процедурно бы лучше внешний вид сделал. - я очень рад что мне помогает и дает советы такой опытный кодер :super: (просьба дать хотя бы 1 пример, как процедурно сделать крисиво кнопку в меню (или/и фон) + прибамбасы (например что бы кнопка светилась и прыгала ;-), когда на нее навели мышь)
6) Насчет "много ресурсов" ... ну согрешил!((( буду их "урезать"
7) В вот вид камеры тут я уже просто не знаю! посоветуйте! Мне так легче, когда меня кто-то направляет!

И...хочу выразить благодарность за Ваш интерес к моему скромному проекту! ;)

tormoz 01.04.2006 20:34

По меню:
создай квад:

Код:

Function CreatePlane_m(File$,fl)
Local texture,scx#,scy#

 mesh=CreateMesh()
 surf=CreateSurface(mesh)

  AddVertex surf,-1,1,0,0,0:AddVertex surf,1,1,0,1,0
  AddVertex surf,1,-1,0,1,1:AddVertex surf,-1,-1,0,0,1
       
        AddTriangle surf,0,1,2:AddTriangle surf,0,2,3
        UpdateNormals mesh
        texture=LoadTexture ( File$,fl)
        img=LoadImage(File$)
       
        scx#=ImageWidth (img)
        scy#=ImageHeight (img)
       
        ScaleMesh  mesh,scx/256,scy/256,1
        EntityTexture mesh,texture
        FreeTexture texture
        FreeImage img
        Return mesh
End Function

Потом помести перед камерой, и делай с ним что хочешь.

Например:
Код:


Function CreateMenu()
menu_stat=0
menu_tip$=""
CameraProjMode cam,0

;-------------Camera---------------
cam_m=CreateCamera()
CameraZoom cam_m,1.4
CameraRange cam_m,.5,100
MoveEntity cam_m,0,0,-5

light_m = CreateLight()
;--------------------------
cursor=LoadImage("menu\cursor.png")
ScaleImage cursor,fx,fx
menu_tip$="glav"
  ;--------------glav-------------------------
  LoadMenu_m("play.png","glav","play","play",0,1)
  LoadMenu_m("options.png","glav","options","options",0,.5)
  LoadMenu_m("credits.png","glav","credits","glav",0,0)
  LoadMenu_m("exit.png","glav","exit","exit",0,-.5)

и тд


Function LoadMenu_m(img$,tip$,mip$,sip$,x#,y#)
 m.menu=New menu
 m\tip$=tip$
 m\mip$=mip$
  m\sip$=sip$
 m\en= CreatePlane_m("menu\"+img$,2)
 m\x=x
 m\y=y
 PositionEntity m\en,m\x,m\y,0
 NameEntity m\en,Handle(m)
 Return m\en
End Function

Function UpdateMenu()
 ;===============================================================================
While Not menu_stat<>0

Delay 1
 ;-------------
        Repeat
 elapsed = MilliSecs () - Time
        Until elapsed       
        ticks = elapsed / period       
        tween# = Float (elapsed Mod period) / Float (period)       
For framelimit = 1 To ticks
        If framelimit = ticks CaptureWorld
        Time = Time + period
  UpdateWorld
 
  ;---------------------------------------------------------------------------
        MHIT=MouseHit(1)
        MHIT2=MouseHit(2)
        MDOW=MouseDown(1)
        mox=MouseX()
        moy=MouseY()
        mxs#=MouseXSpeed()
        mys#=MouseYSpeed()
;----------------------------------
ent=CameraPick (cam_m,mox,moy)

;--------------------------------------
For m.menu=Each menu
If m\stateD=0
 PositionEntity m\en,m\x+m\xs,m\y+m\ys,0
 RotateEntity m\en,m\ts,m\rs,0


 m\xs=m\xs+m\xa
 m\xa=m\xa+(m\x-EntityX(m\en))*0.04
m\xa=m\xa*.9
m\xs=m\xs*.9999

m\ys=m\ys+m\ya
 m\ya=m\ya+(m\y-EntityY(m\en))*0.04
m\ya=m\ya*.9
m\ys=m\ys*.9999

m\rs=m\rs+m\ra
 m\ra=m\ra+(-EntityYaw(m\en))*0.04
m\ra=m\ra*.9
m\rs=m\rs*.9999

m\ts=m\ts+m\ta
 m\ta=m\ta+(-EntityPitch(m\en))*0.04
m\ta=m\ta*.9
m\ts=m\ts*.9999

If m\en=ent
 m\xs=m\xs+mxs*0.0004
 m\ys=m\ys+mys*0.0004
 m\rs=m\rs+mxs*0.04
 m\ts=m\ts+mys*0.2

If mhit
 
  If m\mip$="video"
  wig=GraphicsWidth()
  EndIf
;==================
 ;If m\mip$<>"apple" And m\mip$<>"left_a" And m\mip$<>"right_a" And m\mip$<>"left_m" And m\mip$<>"right_m"
  menu_tip$=m\sip$
 ;EndIf
  ;------------video-----------------
  If m\tip$="video" And m\mip$<>"options"And m\mip$<>"apple"
  wig= m\mip$
  Else

  If m\mip$="apple"
        Select wig
        Case 1024
          hei=768
        Case 800
          hei=600
        Case 640
          hei=480
        End Select
    Save_cfg()
        menu_stat=1 
  EndIf
 
  EndIf
 ;------------------audio---------------
  If m\tip$="audio"
  If m\mip$="left_a"
      If l_audio>0 l_audio=l_audio-10 
    EndIf
    If m\mip$="right_a"
    If l_audio<100 l_audio=l_audio+10   
  EndIf
  If m\mip$="left_m"
      If l_music>0 l_music=l_music-10 
    EndIf
    If m\mip$="right_m"
    If l_music<100 l_music=l_music+10   
  EndIf
  EndIf
;------------------effect---------------
  If m\tip$="effect"
   
    If m\mip$="options"
      Save_cfg()
    Else
        effect=m\mip$
    EndIf
    EndIf
;-------------------------play-----------------
  If menu_tip$="play"
  If m\mip$="1" Or m\mip$="2" Or m\mip$="3"
    mode_game=mode_game+1
    If mode_game>3 mode_game=1
  EndIf
  EndIf 
;---------------------------------------------
 
  stateMenu()
;------------------select-------------
  If menu_tip$="exit"
  menu_stat=10
  EndIf
;--------------play---------
  If menu_tip$="play"
  ;menu_stat=4
  EndIf
;------------------------------------
EndIf

EndIf

Else
 RotateEntity m\en,m\stateD,0,0
EndIf

  If m\stateD>m\state  m\stateD=m\stateD-10
  If m\stateD<m\state  m\stateD=m\stateD+10


Next       
;----------------------------------       
Next
RenderWorld
 DrawImage cursor,mox,moy

Flip 0
Wend
End Function

Примерно так.
кнопки реагируют на мышку и переворачиваются при клике

Камера должна быть без регулировок сразу на месте.
Минимум управления делай. Юзеры на таких играх не будут искать клавиш и тд.
подними камеру повыше, чтобы было видно все поле (или 2\3 хотя бы)
Сделай повороты камеры плавней.
Процедурную графику лучше не юзай, учись моделить и текстурить в максе - на такую простую графику научишся за пару дней.
Используй несколько материалов на кубиках: например деревянный ящик обшитый полосами из металла. При взрыве пусть разлетается щепками

tormoz 01.04.2006 20:37

Да, убери управление с кнопок мышки - удобней ставить бомбы кликами. а не пробелом.
Представь что у юзера в руке мышка, в другой клавиши движения. все ! обходись этими средствами управления.

Fant 02.04.2006 01:28

Вообщем коды те нехорошие! Не знаю что с ними делать...и не работают они...

Камеру подправил: правая кнопа мыши - менять режим ;)
Управление изменил: на курсор ;)

Что еще там стоит доработать?

Не знаю что делать с багом: :wallbash:
Если нажать на "создать приз" (f1-f7) то будет нехорошо (игра зависнет)
Если включить режим "случайно расставлять кубики, тоже виснет
Однако если загружать готовую карту, то призы успешно добавляются!

С графикой я еще ничего не менял, это пожождет, так что ресурсы (старые) пока еще нужно оставить

А насколько лучше все делать процедурно!? Что мне это даст!? Больше ФПС?
или только экономия места...?

Fant 02.04.2006 01:28

Вложений: 1
Вообщем коды те нехорошие! Не знаю что с ними делать...и не работают они...

Камеру подправил: правая кнопа мыши - менять режим ;)
Управление изменил: на курсор ;)

Что еще там стоит доработать?

Не знаю что делать с багом: :wallbash:
Если нажать на "создать приз" (f1-f7) то будет нехорошо (игра зависнет)
Если включить режим "случайно расставлять кубики, тоже виснет
Однако если загружать готовую карту, то призы успешно добавляются!

С графикой я еще ничего не менял, это пожождет, так что ресурсы (старые) пока еще нужно оставить

А насколько лучше все делать процедурно!? Что мне это даст!? Больше ФПС?
или только экономия места...?

tormoz 02.04.2006 04:32

Цитата:

Originally posted by Fant@1.4.2006, 23:28
Вообщем коды те нехорошие! Не знаю что с ними делать...и не работают они...

Код вырезан из рабочего меню. Чтобы ты понял принцип построения динамических кнопок
Цитата:

Камеру подправил: правая кнопа мыши - менять режим ;)
Управление изменил: на курсор ;)
Что еще там стоит доработать?

Камеру размести НАД полем, чтобы был хороший обзор.
Сейчас играть просто невозможно- ничего не видно
Или так и задумывалось ? :blink:

Цитата:

Не знаю что делать с багом: :wallbash:
Если нажать на "создать приз" (f1-f7) то будет нехорошо (игра зависнет)
Если включить режим "случайно расставлять кубики, тоже виснет
Однако если загружать готовую карту, то призы успешно добавляются!

Виснет в этом цикле:

;будем выбирать позицию до тех пор, пока
;не выберем ту, где находится пробиваемый кубик
;и нет другого бонуса
While Not (masPrep(x_rnd, z_rnd) = 1 And masBonuses(x_rnd, z_rnd) = 0)
x_rnd = Rand (CFieldWidth)
z_rnd = Rand (CFieldHeight)
Wend

Видимо не находит пробиваемый кубик :))
Цитата:

С графикой я еще ничего не менял, это пожождет, так что ресурсы (старые) пока еще нужно оставить

А насколько лучше все делать процедурно!? Что мне это даст!? Больше ФПС?
или только экономия места...?

Процедурные текстуры дадут маленький размер игры. но большое время загрузки.
Лучше не заморачивайся на них, а делай по старинке.

Fant 02.04.2006 11:07

Про камеру:

:bad:
Как ничего не видно?

5! (пять) режимов камеры!
1. от первого лица
2. вид немного издалека (от 3 лица)
3. вид подальше (от 3 лица)
4. вид сверху (о котором вы говорили)
5. вид сбоку

Переключать ПРАВОЙ кнопкой мыши!

Теперь почему вы говорите, что ничего не видно!? Я не понимаю в чем проблема!

Про меню:

Не понял я...попробую еще разобраться, но мне бы попроще код...

Про баг

Я догадался, что теоретически не находит, но как это исправить?

Про процедуру:

Тогда если захочу морочиться - буду, а если нет, то найду художника(цу)

tormoz 02.04.2006 18:06

Цитата:

Originally posted by Fant@2.4.2006, 9:07
Про камеру:

:bad:
Как ничего не видно?

5! (пять) режимов камеры!
1. от первого лица
2. вид немного издалека (от 3 лица)
3. вид подальше (от 3 лица)
4. вид сверху (о котором вы говорили)
5. вид сбоку

Переключать ПРАВОЙ кнопкой мыши!


Теперь почему вы говорите, что ничего не видно!? Я не понимаю в чем проблема!

У меня переключает только на вид от первого и от третьего
Убери всю эту фигню - она хороша для хардкорщиков.
Помни, что ты делаешь игру для тупых жирных американских беби и для их мамочек.
Оставь один вид, но чтобы было видно все !

Цитата:

Про меню:

Не понял я...попробую еще разобраться, но мне бы попроще код...

Про баг

Я догадался, что теоретически не находит, но как это исправить?

Ищи не рандомом, а перебором всех полей подряд и в конце обязательно проверяй результат - нашел или нет.
Цитата:

Про процедуру:

Тогда если захочу морочиться - буду, а если нет, то найду художника(цу)

Нафиг тебе художник ?
Надергай текстур из любой понравившейся игры


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

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot