GameDev.ru
/ GameDev.ru / Пользователи / Andrey / Сообщения на форуме пользователя Andrey (240 стр.)

Сообщения на форуме пользователя Andrey (240 стр.)

resource manager5 ноя. 20049:02#1
stpg
>И как Вы реализовуете Менеджер Ресурсов???
Ну меня он только начался разробатывать.Я например сделал так:
Есть класс ResourceManager
В этом классе есть ассоциативный массив указтелей на абстрактный класс Resource.Ключом поиска в ассоциативном массиве является расширение файла.От Абстракного класса Resource у меня наследуется пока разработанных 4 класса ресурсов:
TgaResource - для загрузки файлов формата TGA
JpgResource - для загрузки файлов формата JPG
BmpResource -для загрузки файлов формата BMP
GifResource - для загрузки файлов формата GIF (еще в процессе)
_3DSResource для загрузки файлов формата 3DS
4 первых ресурса наследуются от класса GraphicResource, который в свою очередь наследуется от класса Resource.
Для загрузки ресурса я даю менеджеру ресурсов имя файла, менеджер ресурсов сам автоматически узнает по расширению тип ресурса и загружает его.В случае успешной загрузке, если это графический ресурс то,менеджер ресурсов загружает текстуру в память, и возвращает индекс текстуры.
Для 3ds файлов он возврвщает указатель на загруженную 3ds модель. Для инициализации менеджера ресурсов я просто добавляю зарегистрированные ресурсы в ассоциативный массив.Мне пока кажеться это удобный способ.Ели я нахожу
нужный мне ресурс я создаю соответствующий класс начледую его то класса GraphicResource еcли ресурс графический,или от класса Resource если ресурс другого типа.Обработка ошибок реализуется также в менеджере ресурсов.
Где взять доки к Intel JPEG Library?5 ноя. 20048:38#5
tav
А если просто текстрные координаты другими задать?
>как заставить IJL загружать изображение в перевёрнутом виде.
Ну наверное это надо перекомпилировать код самой библиотеки.Но я могу ошибаться.В документации ничего не казано по поводу этого?
GUNgine5 ноя. 20048:35#581
Grey-
> Step9\src\stl\stl_alloc.h(305): fatal error C1001: INTERNAL COMPILER ERROR
> (compiler file 'msc1.cpp', line 2701)
> Please choose the Technical Support command on the Visual C++
> Help menu, or open the Technical Support help file for more information
Это компилятор "падает"
Такое у меня было в 6.0 но в 7 не было...Для 6.0 нужнн Service Pack 5.0.Ну для 7.0 не знаю что посоветовать.У меня рвботает,
может тебе тоже Service Pack поставить для 7.0?
Ну что скажете по поводу этого? (бородатый баян про бороды)4 ноя. 200410:15#8
Главное С/С++ рулит и это надолго
Где взять доки к Intel JPEG Library?4 ноя. 20049:43#3
tav
Незачто.
GUNgine4 ноя. 20049:36#577
Neiro
Скинул.Версия без ошибок для Visual C++ 6.0
Grey-
Для Visual C++ .Net все работает без проблем.Для Visual C++ 6.0 надо много ошибок исправить.В частности переопределение переменных, преобразование к типу __int64
Где взять доки к Intel JPEG Library?4 ноя. 20048:52#1
tav
Посмотри почту я тебе отправил все что касается ijl.
Раздел ОБУЧЕНИЕ проекта Almighty.3 ноя. 200416:23#714
Anubis
Ну не знаю я бы так не делал
Mictian
Ну моя подсказка правильная?
Раздел ОБУЧЕНИЕ проекта Almighty.3 ноя. 200414:31#710
Mictian
>А мне что-нить даст переопределение оператора new?
смотря для чего.В уроке  тебе это ненужно.И зачем выходить за рамки урока?
Раздел ОБУЧЕНИЕ проекта Almighty.3 ноя. 200414:21#708
Mictian
Light::Light( const string& name, const vec4& color )
{
//...
SceneObj::m_Objects.insert( make_pair( m_Name, this ) );
//...
}

Light::Light()
{
//...
SceneObj::m_Objects.insert( make_pair( m_Name, this ) );
//...
}

GeomObj::GeomObj()
{
//...
SceneObj::m_Objects.insert( make_pair( m_Name, this ) );
//...
}

GeomObj::GeomObj( const string& name, const vec4& color )
{
//...
SceneObj::m_Objects.insert( make_pair( m_Name, this ) );
//...
}

вроде тут ошибка
Ты this пытаешься записать в map.
по моему пока из конструктора не выйдешь указатель не инициализирован.И память под объект не выделена.
Сначала создай объект с помощью конструктора а потом пихай его в map.
попробуй это сделать после выхода из конструктора.

Если не правильно подсказал не пинайте.

Раздел ОБУЧЕНИЕ проекта Almighty.3 ноя. 200413:41#703
PC
*MPAK*
Всем спасибо только что убрал случайно именно этот проклятый минус!!!!!!!!!!!!!!!!!!!!!!!!
Раздел ОБУЧЕНИЕ проекта Almighty.3 ноя. 200413:03#700
Mictian
Код в студию.
all
Народ не знаете почему у меня у кубика грани в трапецию искажаются?
если отдельно перемножать на матрицы сформированны с помощью rotateX,rotateY,rotateZ
все ок но, если перемножить на матрицу rotateXYZ то грани искажаются!!!
вот код
//Матрица вращения по всем 3 углам
	inline void rotateXYZ(float pitch, float yaw, float roll)
	{
		float CosPitch = cosf(pitch);
		float SinPitch = sinf(pitch);
		float CosYaw = cosf(yaw);
		float SinYaw = sinf(yaw);
		float CosRoll = cosf(roll);
		float SinRoll = sinf(roll);

		Matrix[0][0] =  CosYaw*CosRoll;
		Matrix[0][1] =	SinRoll*CosYaw;
		Matrix[0][2] =  -SinYaw;
		Matrix[0][3] =  0.0f;

		Matrix[1][0] =  SinPitch*SinYaw*CosRoll - SinRoll*CosPitch;
		Matrix[1][1] =  SinPitch*SinYaw*SinRoll + CosPitch*CosRoll;
		Matrix[1][2] = -SinPitch*CosYaw;
		Matrix[1][3] =  0.0f;


		Matrix[2][0] =	SinYaw*CosPitch*CosRoll + SinPitch*SinRoll;
		Matrix[2][1] =  SinRoll*SinYaw*CosPitch - CosRoll*SinPitch;
		Matrix[2][2] =  CosPitch*CosYaw;
		Matrix[2][3] =  0.0f;


		Matrix[3][0] =  0.0f;
		Matrix[3][1] =  0.0f;
		Matrix[3][2] =  0.0f;
		Matrix[3][3] =  1.0f;


	}

Посмотрите где ошибка пожалуйста!!!

GUNgine3 ноя. 20048:35#570
Grey-
>и удивился количеству warnig
Эти предупреждения по поводу шаблонов были?
>Банальные методы типа : #pragma warning (disable: 4786) ничем не помогло.
А мне помогло ты где это ставил?
Если хочешь давай на мыло пришлю тебе исправленный шаг 5 без предупреждений.
Стоит ли делать редактор 3d ландшафтов?2 ноя. 200414:29#6
UrryMcA
Я бы тоже присоеденился к написанию редактора если можно.

Следующие темы >>

2001—2012 © GameDev.ru — Разработка игр