Новые статьи

Основы 3D с Kha

GameDev  3d, haxe, kha

Введение
В данной статье мы рассмотрим 3d основы на примере api абстракции над OpenGL, WebGL и DirectX, реализованной в фреймворке Kha. Весь код будет представлен на языке Haxe, но вы не потеряетесь в нем, если знакомы с java/js-подобным синтаксисом.

Итак, из чего состоит 3d модель? В первую очередь это меш (т.е. полигональная сетка, от англ. polygon mesh), что означает набор вершин (vertices), ребер (edges) и граней (faces).

mesh.png

Полигоны и поверхности образуются из первых трех вещей, поэтому далее не затрагиваются.
Кроме того, модель обычно включает в себя данные текстур, цвета, нормали и любую важную для рендера информацию, которую мы изучим подробнее в другой раз. Но сейчас, сконцентрируемся на самой меши – какое она имеет
Продолжить

Рейтинг:  7  (За: 8 | Против: 1)
Добавлено: 21.07.2018 от RblSb

Комментарии (4)

C++ или программирование по-универовски. Часть 1. Организация

Прочие языки  c++, универ

Однажды в студёную зимнюю пору, решили, значится, в нашем универе студентов вводному курсу по программированию обучить. Да не просто программированию, а работе с формами на C++, использовав для этого софтину C++ Builder шестой версии. Стоит ли говорить, что хлопот у ребят это вызвало немало, что уж там, многие и после экзамена не поняли, что они на самом деле делали (или не делали). Но не будем о грустном, а в данной статье как раз таки попытаемся разобраться с этим универным программированием, т.к. используется там эта методика уже более 10 лет, и, думаю, ещё будет использоваться, по крайней мере до смены поколения преподавателей. :hack:
Продолжить

Рейтинг:  3  (За: 6 | Против: 3)
Добавлено: 21.06.2018 от nitsu

Комментарии (8)

Апгрейд ноутбука. Добавляем память: RAM

Железо  ram, апгрейд, память

Продолжаю обновлять свой нотебук.
Продолжить

Рейтинг:  5  (За: 5 | Против: 0)
Добавлено: 7.06.2018 от Витаминыч

Комментарии (20)

Апгрейд ноутбука. Добавляем память: HDD

Железо  hdd, dvd-rom, ssd

Начинаю потихоньку апгрейдить свой ноутбук, начал с самого легкого: расширение текущей памяти.
Суть очень проста - надобность в DVD-приводе отпала, потому на его место и будет установлена дополнительная память.
Продолжить

Рейтинг:  3  (За: 7 | Против: 4)
Добавлено: 20.04.2018 от Витаминыч

Комментарии (18)

Пример использования функционального программирования во избежание дублирования кода

Java  функциональное программирование, лямбды, конфиг

Допустим, перед нами стоит задача загрузить конфиг приложения. Есть внутренний конфиг, который хранится в файле app.properties внутри jar-файла, и есть внешний — хранится в пользовательской директории ~/.config/app.conf.
Приложение при запуске читает внешний конфиг. Если какого-то параметра в нём нет, будет браться значение из внутреннего. Если внешнего конфига вообще нет — читается внутренний.

Для чтения внутреннего конфига используется класс ResourceBundle и его метод getString(String key), для внешнего — Properties
Продолжить

Рейтинг:  7  (За: 8 | Против: 1)
Добавлено: 17.04.2018 от aNNiMON

Комментарии (2)
<< 1 ... 12 13 14 15 16 ... 49 >>

Мы в соцсетях

tw tg yt gt