Теневая плоскость (ShadowplaneCreate)


Автор Сообщение

мастер
Группа: Участники
Сообщений: 115
Добавлено: 16-07-2009 20:35
Тут решил всё таки поплотнее начать изучать данный движок, и вот по втором номеру журнала FPS решил сделать камеру+куб+теневую плоскость, однако застрял на строке: plane=ShadowplaneCreate(128,128,10,10,

это создание теневой плоскости. В хелпе к Xtreme, дается такой вариант : result as real=ShadowplaneCreate( width, as height,, xTiles, as yTiles,, bso,light,color,alpha,parent as real );


что такое BSO я не знаю,

А Cyb скинул мне документацию где пишут: ShadowplaneCreate( width, height, xTiles, yTiles, ShadowingObject, ShadowedLight, color, alpha, parent )


тут вопрос по ShadowingObject, ShadowedLight.

есть знатоки желающие объяснить что это такое?

Ответственный за CHM
Группа: Модераторы
Сообщений: 346
Добавлено: 17-07-2009 12:19
В хелпе к Xtreme, дается такой вариант : result as real=ShadowplaneCreate( width, as height,, xTiles, as yTiles,, bso,light,color,alpha,parent as real );
что такое BSO я не знаю,

Я так подозреваю, что это из справки к версии 2.0, поэтому то, что скинул тебе Cyb (версия 2.2, наверное), актуально на данный момент, поэтому пользуйся ею.
ShadowingObject, ShadowedLight

Рассмотрим функцию:
plane=ShadowplaneCreate(100,100,5,5,shadow_caster,light,c_black, 0.3,global.scene);
ShadowingObject - здесь нам нужно присвоить тень для каждого объекта сцены, для этого создаем Манекен shadow_caster=DummycubeCreate(global.scene); и вписываем его название в 5 аргумент функции.
ShadowedLight - сюда вписываем название объекта освещения (например Light1), но соответственно свет нужно еще и создать.
P.S Тему переименовал в более подходящую.

мастер
Группа: Участники
Сообщений: 115
Добавлено: 17-07-2009 20:07
Hacker, спасибо за разъяснения, вот сейчас заметил что там был перенос строки, Gecko не допустил там ошибок. Видать я вчера сильно на солнце перегрелся.
[img]http://pikucha.ru/123640/thumbnail/13.jpg[/img][/url]

строки 2-3


Вот вроде все так же сделал но вылезла следующая ошибка:

___________________________________________
ERROR in
action number 1
of Create Event
for object o_engine:

Error defining an external function.




Ответственный за CHM
Группа: Модераторы
Сообщений: 346
Добавлено: 18-07-2009 10:39
ERROR in
action number 1
of Create Event
for object o_engine:

Error defining an external function.

А есть ли в директории с программой библиотеки Xtreme3D.dll и ode.dll ?
И еще... shadow_caster надо прописывать у тех объектов в родителях, от которых должна падать тень (просто заметка!)

мастер
Группа: Участники
Сообщений: 115
Добавлено: 20-07-2009 12:48
эти библиотеки были в папке D:\GameMaker7_0\X3DV2_full
скопировал их на всякий случай в директорию D:\GameMaker7_0\, то есть непосредственно в саму прогу, не помогло.

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

Ответственный за CHM
Группа: Модераторы
Сообщений: 346
Добавлено: 20-07-2009 14:48
эти библиотеки были в папке D:\GameMaker7_0\X3DV2_full
скопировал их на всякий случай в директорию D:\GameMaker7_0\, то есть непосредственно в саму прогу, не помогло.

Под программой я имел ввиду файл твоего проекта (иными словами, есть у тебя папка с твоей игрой, например 'Games' и в ней содержится твоя игра Game.gmk то туда и надо кидать библиотеки и тогда все заработает! )
По сути я просто переписал урок что я во втором номере ну и разбирался параллельно что там к чему. Проверил срипт на ошибки вроде ни одной строки не отметилось.

GM может найти ошибки только в своих функциях, а в функциях, которые используют dll библиотеки, ГМ этого сделать не может.
А синтаксис, соответственно, проверяет везде.

 

Offtop.ru © 2003