forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   3D-программирование (http://forum.boolean.name/forumdisplay.php?f=12)
-   -   Тормоза при загрузке из AnimSeq (http://forum.boolean.name/showthread.php?t=5969)

Dstorton111 30.04.2008 23:29

Re: Тормоза при загрузке из AnimSeq
 
Цитата:

представь что если напишешь в другом месте то не скомпилируется
А смысл, Ведь цель - написать быстро эффективно и удобно, а не выкручиваться из того что есть. Я не хочу быть ограничен средствами и методами разработки. Если что-то есть что я эффективно и с пользой могу пользовать то я буду это делать.

jimon 01.05.2008 00:17

Ответ: Тормоза при загрузке из AnimSeq
 
Dstorton111
писать быстро, эффективно и удобно можно только когда поймешь
что такое медленно, неэффективно и неудобно

ошибки программиста просто всплывают не скоро ...
обычно ошибочное решение всплывает через 2-3 месяца работы
и тянет за собой две недели исправления кода

вот напишешь ты сто инклудов ... и завалится код
будешь переписывать все заново ? скорее проект забросишь

Dstorton111 01.05.2008 04:23

Re: Тормоза при загрузке из AnimSeq
 
Цитата:

писать быстро, эффективно и удобно можно только когда поймешь
что такое медленно, неэффективно и неудобно

ошибки программиста просто всплывают не скоро ...
обычно ошибочное решение всплывает через 2-3 месяца работы
и тянет за собой две недели исправления кода

вот напишешь ты сто инклудов ... и завалится код
будешь переписывать все заново ? скорее проект забросишь
Jimon - А может тогда ты за меня код напишешь?
Все тут такие спецы млин, опыта выше крыши, знаний хоть профессором в институт, а кроме философских рассуждений уж извините господа нихрена нету.

Уже сколько прошу этот факинговый код на интерполяцию FPS?

Ещё раз говорю, не вижу неудобств использования инклудов, они костяк мсоей проги, удобная фишка от которой я не откажусь, максимум что я зделаю, буду грузить не командой Include а чем-нибудь вроде Uses

А вы, господа крутые программёры если не помогаете дельными советами, то уж лучше бы не мешали. Вторая страница этой ветки уж пошла а толку то от этого почти ноль.

tormoz 01.05.2008 04:53

Ответ: Тормоза при загрузке из AnimSeq
 
Мдя.
Если ты такой крутой, то нафига ваще тут вопросы задаешь ?

1 инклуды все всегда подрубают вне цикла.
Если тебе закон не писан - то ты просто упрямый нуб

Код:

Include filename$
Parameters
filename$ - name of .bb file to be 'Include(d)' in quotes. 

Description
Includes the contents of the specified .bb file in the current source code file.

Useful for when you're code gets too big, or you just want to organise functions that you've finalised and functions that you're working on.

The Include command effectively "cuts and pastes" the contents of the .bb file to be included into the current file at the point of the Include function call, temporarily, before being passed to the compiler to Execute.

Note that each .bb file can only be included once.

2 код стабилизатора фпс многократно выкладывался на форуме. заюзай поиск - будет счастье

3 будешь грубить - хрен тебе кто поможет. скорее всего будешь менять ник - ты уже испоганил репутацию себе

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

Dstorton111 01.05.2008 09:45

Цитата:

Если ты такой крутой, то нафига ваще тут вопросы задаешь ?
Не хочешь быть ламером - не огрызайся, а принимай к сведению
Да, Да, Да и ещё раз да. Сорвался.
Не, ну если я в каждом сообщении просил помощи в конкретном вопросе а меня всё тыкали носом как кошака нагадившего на ковре в этот Incude.
Меня реально заводит когда учат чему не просят.
Не судьба было сразу отправить меня на нужную статью по FPS и не напрягаться больше?

Цитата:

Note that each .bb file can only be included once.

Будет время переделаю

Кстати поиск на форуме никуда не годится, жму FPS а мне Sorry - no matches. Please try some different terms

jimon 01.05.2008 13:30

Ответ: Тормоза при загрузке из AnimSeq
 
1) помогут : http://blitzetc.blitzmax.ru/index.php/Каталог:Статьи
2) http://blitzetc.blitzmax.ru/index.ph...ия_FPS_в_играх
http://forum.boolean.name/showthread.php?t=5
3)можно еще в гугле поискать, формат : "ключевые слова site:на_каком_сайте_искать"

можешь поискать на blitz.pp.ru/forum/

Dstorton111 01.05.2008 14:12

Re: Тормоза при загрузке из AnimSeq
 
Thanks GOD!!:rolleyes: Вот реальный конструктивный диалог, JIMON респект:cool:

Dstorton111 01.05.2008 15:34

Re: Тормоза при загрузке из AnimSeq
 
Кстати, кто там говорил насчёт Инклудов? У мененя например этот код из функции не работает абсолютно.
Я наверно туплю и не так программлю, но подскажите если знаете в чём моя ошибка

Код:

  Select WG_GetEvent() ;//Проверка нажатия элементов меню
  Case WGV_EventElementClick
    Select WG_EventSource()
  Case but_0;//Старт
          GState=1
  Case but_5;//Выход   
          End
  Case but_7;//Настройки
          WG_HideElement (win_autor)
          WG_SetElementY(win_autor,1000) 
          WG_ShowElement (win_opt)
          WG_SetElementY(win_opt,200)     
  Case but_8;//Авторы
          WG_HideElement(win_opt)
          WG_SetElementY(win_opt,1000)
          WG_ShowElement (win_autor)
          WG_SetElementY(win_autor,200)
  End Select
 End Select


tormoz 01.05.2008 21:14

Ответ: Тормоза при загрузке из AnimSeq
 
И где тут функция ?

Dstorton111 01.05.2008 23:10

Re: Тормоза при загрузке из AnimSeq
 
Цитата:

И где тут функция ?
Здесь ищите строку Include "Update_Menu.bb";//Рисуем Графику Меню
Код:

Graphics3D 1024,768,32,1
  Include "Includes.bb"
    SetBuffer BackBuffer()
    GUIw512_Init(1); Меню
    Black_Init(); Видео
    Black_SetSound(1); глобальный уровень звука в видео
 SetFont LoadFont ("Tahoma",16); Шрифт программы
  Include "CreateMenu.bb";//Создаюм окошки меню
While (1);//Обновляем всю программу
If KeyHit (1)
  GState = 0
EndIf
;==========- UpDate GUI
  Select GState; Определяем состояние программы пауза или игра
 
  Case 0 ; Если Пауза
      Pause_Game()
   
  Case 1 ; Если Нажали на Старт
        Select Gstarted; предыдущее состояние игры
    Case 0; Если Старт
        Include "new_game.bb" ; Сдесь грузим уровень. Создаём Игрока "
    Case 1 ; Если Продолжить  //  цикл обновления программы
             
    LimitFPS(); Ставим ограничение по FPS - 50 кадров "Не догнал как сделать нормальную интерполяцию"
     
        Include "Upd_Game.bb" ; Сдесь функции типа UpdatePlayers()
 
            WG_HideElement(win_opt)
            WG_HideElement (win_autor)
        WG_HideElement(wim_0)
     
      FreeImageEx im
              Filter_Textures()
              pxSetPause(0)
 
    End Select
  End Select
 Include "Update_Menu.bb";//Рисуем Графику Меню
 Flip 0
Wend
GameFree()
End

Include "Functions.bb";// Основные функции программы

Здесь cам файл Update_Menu.bb
Цитата:

;========== Обновляем Меню ======
If MilliSecs()-timefps<1000 Then
fps=fps+1
Else
screenfps=fps
fps=0
timefps=MilliSecs()
speed[0]=.1*30/screenfps
speed[1]=.15*30/screenfps
speed[2]=.2*30/screenfps
WGV_ContextMenuShowSpeed#=speed[1]
WGV_ContextMenuChangeAlphaSpeed#=speed[0]
WGV_WindowShowSpeed#=speed[2]
WGV_WindowChangeAlphaSpeed#=speed[0]
WGV_WindowFurlSpeed#=speed[2]
WGV_ElementShowSpeed#=speed[2]
WGV_ElementChangeAlphaSpeed#=speed[0]
EndIf
Select WG_GetEvent() ;//Проверка нажатия кнопок меню
Case WGV_EventElementClick
Select WG_EventSource()
Case but_0;//Старт
GState=1


Case but_5;//Выход
End
Case but_7;//Настройки
WG_HideElement (win_autor)
WG_SetElementY(win_autor,1000)
WG_ShowElement (win_opt)
WG_SetElementY(win_opt,200)
Case but_8;//Авторы
WG_HideElement(win_opt)
WG_SetElementY(win_opt,1000)
WG_ShowElement (win_autor)
WG_SetElementY(win_autor,200)
End Select
End Select
ТАк вот, Если файл Update_Menu.bb загнать в функцию и вызывать именно функцию вместо Include, ТО меню не реагирует на нажатия, то-есть функция не обробатывается

Ну, я ведь ламер, незнаю как заставить код вызываться из функции. Господа гуру для вас то делов на минуту, помогите!!!

tormoz 01.05.2008 23:30

Ответ: Тормоза при загрузке из AnimSeq
 
Код:

; Function Example

; Get the user's name
name$=Input$("Enter Your Name:")

; Call a function to print how many letters the name has
numletters(name$);

; Let's get something BACK from the function
thefirst$=firstletter(name$)

; Now print results
Print "Was the first letter an 'S'? (1=True/0=False)" + thefirst$

;The program basically ends here, because functions don't run unless called.

; The actual function
Function numletters(passedname$)
Print "Your name has " + Len(passedname$) + " letters in it."
End Function

; Function to see if the first letter is S
Function firstletter(passedname$)

; If the first letter is an 'S' then return from the function a true value
If Left$(passedname$,1) = "S" Then
Return True

; Otherwise, return false
Else

Return False

End If
End Function

Еще покури глобальные и локальные переменные
И запомни:
инклюды в цикле не вызывают !
Вызывают функции из инклюдов

Dstorton111 01.05.2008 23:46

Re: Тормоза при загрузке из AnimSeq
 
Цитата:

Еще покури глобальные и локальные переменные
И запомни:
инклюды в цикле не вызывают !
Вызывают функции из инклюдов
Пробовал я объявлять все переменные из этого куска кода, и потом ставить функцию, но по нулям.

Может получиться потом чтонибудь сделать но в данный момент кроме инклуда пока ничего не работает

tormoz 02.05.2008 01:42

Ответ: Тормоза при загрузке из AnimSeq
 
speed[0] - это массив ?
Объяви его нормально - глобалом в начале инклюда с этой функцией

Dim speed(10)
квадратными скобками обозначаются локальные массивы, которые доступны только внутри функции.
И запомни: ВСЕ локальные переменные и массивы при выходе\входе в функцию обнуляются

Venom 02.05.2008 08:16

Ответ: Тормоза при загрузке из AnimSeq
 
Цитата:

Сообщение от tormoz (Сообщение 80463)
И запомни:
инклюды в цикле не вызывают !

Да что вы пристали то к человеку, если ему удобно выносить части кода в отдельные файлы, пускай. Какая разница где будет include, препроцессор блица просто заменит его на код в подключаемом файле, другое дело что в этом файле, само собой инициализацию и функции надо вынести за цикл.

HolyDel 02.05.2008 16:34

Ответ: Тормоза при загрузке из AnimSeq
 
Цитата:

Да что вы пристали то к человеку, если ему удобно выносить части кода в отдельные файлы, пускай. Какая разница где будет include, препроцессор блица просто заменит его на код в подключаемом файле, другое дело что в этом файле, само собой инициализацию и функции надо вынести за цикл.
правда-правда? почему то мне нигде не встречалась эта информация.


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

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