Читаем Журнал «Компьютерра» №45 от 01 декабря 2005 года полностью

OpenGL и Direct3D - две основные на сегодняшний день аппаратно-ускоряемые библиотеки для создания компьютерной трехмерной графики. Перед каждым начинающим 3D-программистом встает вопрос: какой из двух вариантов API выбрать? Вопрос этот совсем не прост, собственного опыта для принятия осознанного решения, как правило, не хватает. И хотя на форумах такие темы обсуждаются регулярно, почерпнуть из них информацию порой непросто, поскольку «советы бывалых» обычно основываются на личных предпочтениях.

Итак, что же выбрать начинающему «тридешнику»? Ответ зависит от трех факторов: от поставленной задачи, от умений программиста и от того, чем он намерен заниматься в дальнейшем. С первым фактором все более или менее просто: начинающий 3D-программист может быть или совсем зеленым новичком, или обладать каким-то опытом в других областях. Второй фактор более расплывчат и во многом зависит от первого, ведь только-только ступая на стезю программирования, очень трудно четко поставить задачу, обычно хочется написать что-то такое, чтоб было красиво и все двигалось и блестело; из этого мы и будем исходить, советуя ту или иную библиотеку. В случае же с опытным программистом дела обстоят иначе; тут может потребоваться или визуализация результатов какой-то вычислительной программы, или внезапно появился выгодный заказ, да вот беда, с необходимостью 3D-графики. Ну а третий фактор очень грубо можно разделить на два направления: первое - разработка игр и все что с этим связано; второе - написание приложений для работы с 3D-графикой и визуализация научных данных (скромно назовем все это научной графикой). Третий фактор тоже тесно связан с первым: практически все «молодые и перспективные» хотят писать игры, ну так уж повелось; и в общем-то они правы - игровая отрасль не только интересная и быстро развивающаяся, но и гораздо лучше представлена на территории нашей страны. В самом деле, все слышали об отечественных играх и компаниях их разрабатывающих, но мало что известно об успехах россиян на поприще научной графики.

Теперь подробнее остановимся на истории каждой из технологий. Начнем с Direct3D. В те давние времена, когда Windows только входила в нашу жизнь, абсолютное большинство игр писалось еще под DOS, а Windows 3.1 не предоставляла эффективных средств доступа к видео- и звуковым устройством. Такое положение дел не устраивало Microsoft, и корпорация вознамерилась сделать 3D API, который стал бы удобным инструментом в руках разработчиков игр. То ли из-за нехватки времени и ресурсов, то ли по другим причинам Microsoft решила не изобретать велосипед, а использовать наработки компании RenderMorphics. Это был совсем маленький проект, на его базе была создана небольшая библиотека Game SDK, которая и стала впоследствии именоваться DirectX 1.0. И как это ни прискорбно для Microsoft, первому DirectX не суждено было стать распространенным средством разработки игр. Причин тому было множество, и если с плохой структурой и сложностью использования еще можно было мириться, то многочисленные ошибки и неповоротливость написанных игр ставили крест на широком распространении этой технологии. Но не в правилах Microsoft сдаваться, и она немедленно принялась совершенствовать свое неудачное детище. Первой по-настоящему принятой программистским сообществом версией DirectX стала 7.0. Этот продукт был лишен большинства из «детских болезней» своих предшественников: научился почти полностью использовать потенциал видеокарт, его интерфейс стал гораздо приятнее, и, главное, DirectX 7.0 был стабилен (сейчас существует DirectX 9.0 - мощное и удобное средство разработки). Вы, наверное, обратили внимание, что я периодически называю вроде бы одно и то же по-разному - то DirectX, то Direct3D. На самом деле все просто: Direct3D - это часть DirectX. До седьмой версии в DirectX было два графических инструмента: Direct3D и DirectDraw, для трех- и двухмерной графики соответственно. DirectX содержит и другие полезные компоненты - например, DirectSound и DirectPlay. Первый используется для воспроизведения звуков, а второй облегчает жизнь разработчику игр: он берет на себя работу с вводом и даже включает сетевые интерфейсы.

Перейти на страницу:

Все книги серии Компьютерра

Похожие книги

«Если», 2003 № 09
«Если», 2003 № 09

Александр ЗОРИЧ. ТОПОРЫ И ЛОТОСЫВ каркас космической оперы плотно упакованы очень непростой вопрос, весьма неожиданное решение и совсем неоднозначные герои.Анджей ЗЕМЯНСКИЙ. АВТОБАН НАХ ПОЗНАНЬЕсли говорить о жанре, то это польский паропанк. Но очень польский…Дэвид НОРДЛИ, ЛЕД, ВОЙНА И ЯЙЦО ВСЕЛЕННОЙЧтобы понять тактику и стратегию инопланетян, необходимо учесть геофизику этого мира — кстати, вполне допустимую в рамках известных нам законов. Представьте себе планету, которая… Словом, кое-что в восприятии придется поменять местами.Жан-Пьер АНДРЕВОН. В АТАКУ!…или Бесконечная Война с точки зрения французского писателя.Дмитрий ВОЛОДИХИН. ТВЕРДЫНЯ РОЗБойцу на передовой положено самое лучшее. И фирма не мелочится!Карен ТРЕВИСС. КОЛОНИАЛЬНЫЙ ЛЕКАРЬХоть кому-то удалось остановить бойню… И знаете, что радует: самым обычным человеческим способом.Василий МИДЯНИН. NIGREDO и ALBEDOОна + Он = Зорич.ВИДЕОДРОМПризрак комикса бродит по Голливуду… Терминатор бежит от терминаторши, хотя надо бы наоборот… Знаменитый российский сценарист рассуждает о фантастике.Павел ЛАУДАНСКИЙ. ПОСЛЕ ЗАЙДЕЛЯJeszcze Polska ne zgingla!Глеб ЕЛИСЕЕВ. «ОБЛИК ОВЕЧИЙ, УМ ЧЕЛОВЕЧИЙ…»Влезть в «шкуру» инопланетянина непросто даже фантасту.ЭКСПЕРТИЗА ТЕМЫ…Фантасты же пытаются объяснить, почему.РЕЦЕНЗИИДаже во время летних отпусков рецензенты не расставались с книгами.КУРСОРЛетом в России конвентная жизнь замирает, а в странах братьев-славян бьет ключом.Сергей ПИТИРИМОВ. ФОРМА ЖИЗНИ? ФОРМА ОБЩЕНИЯ!«В связях, порочащих его, замечен не был», — готов заявить о себе каждый пятый участник опроса.АЛЬТЕРНАТИВНАЯ РЕАЛЬНОСТЬМал золотник, да дорог.Андрей СИНИЦЫН. ЧЕТВЕРОНОГИЕ СТРАДАНИЯВидно, давно критик не писал сочинений. Соскучился.Владислав ГОНЧАРОВ. НОВАЯ КАРТА РОССИИПетербург за пределами Российской Федерации?.. Опасная, между прочим, игра в нынешней политической реальности.ПЕРСОНАЛИИСплошной интернационал!

Юрий Николаевич Арабов , Павел Лауданский , Евгений Викторович Харитонов , Журнал «Если» , Глеб Анатольевич Елисеев

Проза / Прочее / Журналы, газеты / Фантастика / Газеты и журналы / Эссе
«Если», 2004 № 01
«Если», 2004 № 01

ФАНТАСТИКАЕжемесячный журналСодержание:Эликс Делламоника. СПОКОЙНЫЙ ДЕНЬ В ГАЛЕРЕЕ, рассказАлексей Калугин. СОВЕТНИК ПО КУЛЬТУРЕ, рассказЭми Бектел. ПРЕВРАЩЕНИЯ ЧУДОВИЩ, рассказВидеодром* Писатели о кино***** Марина и Сергей Дяченко. БЕЗЖАЛОСТНЫЙ, МИЛЫЙ, ЖЕЛЕЗНЫЙ (статья)* Сиквел***** Дмитрий Байкалов. КОНТРРЕВОЛЮЦИЯ (статья)* Рецензии* Премьера***** Дмитрий Байкалов. НУ А ЗАВТРА — В КИНО! (статья)Стивен Бакстер. ОХОТНИКИ ПАНГЕИ, рассказДон Д'Аммасса. ЦЕЛИТЕЛЬ, рассказБад Спархоук. МЕЖПЛАНЕТНЫЙ РЕСТЛИНГ, рассказВернисаж* Вл. Гаков. КСЕНОПОРТРЕТ (статья, иллюстрации У. Барлоу)Дэниел Хэтч. СЕМЯ СУДЬБЫ, повестьЭлеанор Арнасон. ДОРОЖНЫЕ ПОЭМЫ, рассказЛарри Нивен. РИСК — БЛАГОРОДНОЕ ДЕЛО, рассказМария Галина. НЕСУЩЕСТВУЮЩИЕ СУЩЕСТВА (статья)Экспертиза темыВладимир Михайлов. «ЕСЛИ ВСТРЕЧА ПРОИСХОДИТ НА ЕГО ТЕРРИТОРИИ…» (статья)«Фантариум» + конкурс* Олег Кулагин. ИНФРАКРАСНЫЙ (недостающая глава) (рассказ)Виталий Каплан. ПОЧЁМ КАТАСТРОФА? (статья)РецензииКурсорПерсоналии

Олег Кулагин , Эликс Делламоника , Виталий Каплан , СТИВЕН БАКСТЕР , Элеанор Арнасон

Журналы, газеты / Фантастика / Научная Фантастика / Фэнтези