forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   3D-программирование (http://forum.boolean.name/forumdisplay.php?f=12)
-   -   Работа надо ошибками (http://forum.boolean.name/showthread.php?t=8708)

DeadElf 24.07.2009 14:02

Работа надо ошибками
 
Вопрос(просто интересно): почему блитз вначале работает-работает, а только через какое-то время понимает, что в коде была ошибка и перестает работать?

Вопрос2(почти риторический): если всё-таки есть ошибка, которая не выводиться при нажатии кнопки Программа - Проверка на ошибки, то где же мне её искать? Ведь всё работало, а теперь ничего не показывает... хм...

jimon 24.07.2009 14:20

Ответ: Работа надо ошибками
 
DeadElf
потому что блиц не может знать что ты хочешь сделать, потому если синтаксически всё верно то он скомпилирует программу
тоже самое в человеческих языках, ты можешь написать грамотно предложение которое не имеет смысла

DeadElf 24.07.2009 14:47

Ответ: Работа надо ошибками
 
Просмотрел весь код. Оказалось, что дело не в нём. Дело в модели, которую я туда загружал. Вроде бы всё нормально, но ещё один вопрос: как может модель(всего 1500 поликов) повлиять на работу отображения всего, что есть?
Может, я чего не знаю?:4to:

jimon 24.07.2009 14:57

Ответ: Работа надо ошибками
 
DeadElf
поидее не должна

DeadElf 24.07.2009 14:59

Ответ: Работа надо ошибками
 
jimon
тогда мне достался уникальный случай)))
везде бывают исключения, но не такие неожиданные же...

NitE 24.07.2009 15:20

Ответ: Работа надо ошибками
 
кривая модель, криво экспортированная, кривой формат - вариантов море

IGR 24.07.2009 15:29

Ответ: Работа надо ошибками
 
Цитата:

кривая модель, криво экспортированная, кривой формат - вариантов море
как говорится - экстрасенсы в отпуске !! :)

DeadElf 24.07.2009 15:35

Ответ: Работа надо ошибками
 
NitE
Дело оказалось в текстуре. Хотя, что с ней такое, понять не смог. Пришлось просто поменять и всё)))

ABTOMAT 24.07.2009 15:37

Ответ: Работа надо ошибками
 
Ответ на Вопрос: потому что далеко не все ошибки сводятся к опечаткам в операторах, названиях функций и т.д.
Например, если написать

Код:

Cube = CreateCube()
Texture = LoadTexture("C:\Grass.jpeg")
EntityTexture Cube, Grass

А файла "C:\Grass.jpeg" не окажется, то блиц об этом не узнает, пока не попытается загрузить. В переменной Texture окажется 0, но никто не запрещает переменной иметь значение 0. То есть программа будет работать нормально до момента, когда попытаются несуществующую текстуру присвоить на объект.ри одном и том же коде проблемной строки ошибкаможет возникать, а может и не возникать.

Если мы "забудем" строчку Cube = CreateCube(), то переменная Cube будет равна 0, а ошибка вылетит только тогда, когда мы с этим нулём попытаемся что-то сделать ("передвинуть" сили "повернуть")

Кстати если текстура не загрузилась LoadTexture(), то ф-я возвращает 0. То есть ты сразу после загрузки, проверив на 0, можешь узнать, загрузилась или нет. (В Ксорсе ошибка вылетает прямо при загрузке)

Ответ на Вопрос2
Использовать дебаггер! Почему-то многие новички (и не только :4to:) вообще о нём не знают или пренебрегают им, а это супер вещь!
Проверь Program -> Debug Enabled галка должна стоять (при компиляции для "релиза" надо отключать, он немного затормаживает логику)
При вылете ошибки дебаггер (длинное окошко внизу) покажет строчку, где произошла ошибка. Справа можно увидеть текущие значения всех переменных и структур.
То есть в случае-примеревыше он подсветит строчку EntityTexture Cube, Grass ,а справа будет видно, что значение переменной Texture 0. Очевидно, что проблема в этом -> надо искать где она грузится и грезится ли вообще.

З.Ы. Вот тут только вчера ещё одному товарищу объяснил как юзать дебаг
http://forum.boolean.name/showpost.p...5&postcount=18

impersonalis 24.07.2009 15:38

Ответ: Работа надо ошибками
 
http://forum.boolean.name/showthread.php?t=35 ?!?!

DeadElf 24.07.2009 15:42

Ответ: Работа надо ошибками
 
ABTOMAT Спасибо, дебеггеру обучен.
Просто иногда и дебаггер чего-нть не знает... Например, если проблема в переменной типа.

IGR 24.07.2009 16:05

Ответ: Работа надо ошибками
 
действительно дебаггер классная штука !!
вопрос: дебаггеры у всех IDE одинаковые по функ_возможностям ??
или там круче а там не круче ??

jimon 24.07.2009 16:14

Ответ: Работа надо ошибками
 
IGR
самый крутой дебаггер в MSVC ;)

IGR 24.07.2009 16:50

Ответ: Работа надо ошибками
 
Цитата:

IGR
самый крутой дебаггер в MSVC
хе хе !! ну это я уже заметил !! :ok:

но я имел ввиду дебагер блица !! он стандартный ?? или в некоторых ИДЕ есть какие-то надстройки, доп возможности ??

DeadElf 24.07.2009 18:25

Ответ: Работа надо ошибками
 
Цитата:

Сообщение от IGR (Сообщение 111726)
он стандартный ?? или в некоторых ИДЕ есть какие-то надстройки, доп возможности ??

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


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

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