Перейти к содержимому


Свернуть чат Чат Открыть чат во всплывающем окне

Yakim (Watco... : (3 дней назад) КРУЗИИИС!!!11

Изображение
lz : (3 дней назад) КРУЗИС!
lz : (3 дней назад) ЗИС
lz : (3 дней назад) КРУ
Yakim (Watco... : (3 дней назад) Крузис и Королева тоже не в моем вкусе, а проигрывать нечего =D
lz : (3 дней назад) Конечно, полюбить - так королеву, проиграть - так миллион, сделать - так крузис.
smt005 : (4 дней назад) И от третьего лица тоже можно сделать простенькую игру. Простая игра это лучше чем ничего.
smt005 : (4 дней назад) А, ты хочеш что-бы хит был, с "Crysis" графоном и контентом на 100500 часов игры?
Yakim (Watco... : (4 дней назад) Ни топдовншутеры, ни стратежки)
Yakim (Watco... : (4 дней назад) Не, спасибо, не в моем вкусе=)
smt005 : (4 дней назад) Помнится за пару недель от скуки сделал. Делал по вечерам.
smt005 : (4 дней назад)
smt005 : (4 дней назад) Или например такое, только с моделями из игры -> https://youtu.be/RFDdN5dcX8s
smt005 : (4 дней назад) Yakim, да сами себя пните... :) Сделайте что-то, хотя бы уровня "Scrolling TopDown Shooter".
Yakim (Watco... : (5 дней назад) так что, думаю завтра с утреца стартану марафон)
Yakim (Watco... : (5 дней назад) хе-хе, не сомневайся, я в чате по уе уже поинтересовался, сказали обалденный сериал)))
Yandersen : (5 дней назад) Оооооо, поди ща залипнет на пару дней, стопудофф. :)
Yakim (Watco... : (5 дней назад) Окей гляну)
Yandersen : (5 дней назад) Сериал Пространство посмотри. Не по части Мехов, просто шикарен, авось ману доставит.
Yakim (Watco... : (6 дней назад) Дуст и ты уже закаленные и пустые, надож где-то ману доставать)))
Yakim (Watco... : (6 дней назад) Думаю, кого быть пнуть, что-бы тот пнул в ответ да по сильнее.
Yakim (Watco... : (6 дней назад) Давненько и не маленько хе-хе, делать нечего, прокрастинирую =)
Yandersen : (6 дней назад) Якимка, ты там шо, упоролсо маленько? Чиво картинами опспамилсо?
Yakim (Watco... : (неделю назад) Изображение
Yakim (Watco... : (неделю назад) no, you are blind
Гость : (неделю назад) Изображение
lz : (неделю назад) Изображение
Yakim (Watco... : (2 недель назад) Изображение
Гость : (2 недель назад) Подкорректирую: скорее всего, Механоидов в названии уже не будет, кхм.
Гость : (2 недель назад) Не будет М3!.. :(
Yakim (Watco... : (2 недель назад) Нихуяшечки от нас не зависит)
Yandersen : (3 недель назад) Зависит от нас самих. От Скаев - надежды нет.
Гость : (3 недель назад) народ я тут хотел узнать есть шанс на меха 3 ?
Yakim (Watco... : (3 недель назад) точно? :huh: а если найду? :lol:
lz : (3 недель назад) да не, я не)
Yakim (Watco... : (3 недель назад) Егор, ты говоришь так. будто у тебя они есть, так вот, че по чем?))))
Гость : (3 недель назад) Вот бы сейчас, в 2018, читы на мехов гуглить...
lz : (3 недель назад) Ты просто без читов гоняешь.
Yandersen : (3 недель назад) Ниправда, этот сукасадист должен существовать, его не может не быть! Иначе на кого тяготы жизни сваливать?
Yakim (Watco... : (3 недель назад) Юморист от бога, которого нет)))
Гость : (3 недель назад) Бля, я думал это поиск
Гость : (3 недель назад) Читы
Yakim (Watco... : (4 недель назад) Ну как-бы да, насколько я помню, Дуст и Сплайн основатели =) Кажется идея Дуста, реализация Сплайна.
lz : (4 недель назад) Вон даже свалкер2 будет, а ты говоришь. И P4 будет)
Yandersen : (4 недель назад) ессниошибаюсь. Якимка, подтверди?..

Фотография
- - - - -

[GLSL.hpp] - векторная математика как в GLSL

OpenGL GLSL vector vec2 vec3 vec4

  • Авторизуйтесь для ответа в теме
Сообщений в теме: 3

#1 OFFLINE   Yandersen

Yandersen

    Диванный теоретик

  • Админ
  • 454 сообщений
  • Откуда:Canada
  • Настоящее имя:Ян

Отправлено 07 Декабрь 2014 - 01:40

Векторная математика, максимально приближённая к OpenGL Shading Language (GLSL):
 
GLSL.hpp
 
Хеадер содержит базовые классы наподобие GLSL'евских (bvec2, vec3, ivec4, mat3, dmat4...) и операторы для них, а также написанные на ассемблере GLSL-функции (dot, cross, length, normalize, sin, sqrt, abs, mod, tanh, imulExtended, inverse, round, packHalf2x16 и пр.).
GLSL.hpp является однофайловой альтернативой известной библиотеки glm. Также как и в glm, тут упор сделан на максимальное соответствие синтаксиса официальной GLSL документации, однако есть несколько упрощений. В GLSL.hpp нет поддержки half-векторов, а выделение субкомпонентов вектора при свиззлинге выглядит как вызов функции:

vec3 veca(0), vecb(1.f, 2.f, 3.f);
veca.yz() = vecb.zx(); //In GLSL and glm it will look like "veca.yz = vecb.xz;"

Само собой разумеется, в GLSL.hpp нет самплеров, функций работы с ними и пр. элементов GLSL, специфичных для кода шейдеров. Всё остальное есть.

 

Среди функций GLSL часть применима не только к векторам, но и НЕвекторным типам данных (функции типа sqrt, pow и пр.). Чтобы избежать конфликта имён с фукциями стандартной библиотеки math.h эти функции скрыты под неймспейсом "GLSL". Доступиться до них можно так:

#include "GLSL.hpp"
#include <math.h>
//...
float x;
float y = GLSL::sqrt(x);  //sqrt() function from GLSL.hpp is used
float z = sqrt(x);        //sqrt() function from math.h is used
//...
vec2 u;
vec2 v = sqrt(u); //Vector functions do not require namespace selection

Если инструментария GLSL Вам достаточно и math.h подключать нет желания, можно сделать так:

#include "GLSL.hpp"
using namespace GLSL; //Will conflict if <math.h> included as well
//...
float x;
float y = sqrt(x);  //sqrt() function from GLSL.hpp is used

Напоследок добавлю, что в некоторых написанных на ассемблере функциях использованы команды SSE4.1. Это ставит соответствующие требования к компиллятору, жующему GLSL.hpp, а также процессору, грызущему полученный ехе-шник (SSE4.1 начались с Intel Core).



#2 OFFLINE   Yandersen

Yandersen

    Диванный теоретик

  • Админ
  • 454 сообщений
  • Откуда:Canada
  • Настоящее имя:Ян

Отправлено 07 Январь 2015 - 23:25

Передрал с GLSL всю векторную математику. Единственное отличие в том, что выделение свиззлнутых субкомпонентов вектора выглядит не как в оригинале "MyVec.xwzz" а со скобочками на конце: "MyVec.xwzz()". В остальном всё так же (названия классов, функций, работа операторов).

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

Все функции описаны на ассемблере; операторы - пока что нет (инлайнами).

 

Так что вот, официальный релиз такскать, готовый к использованию. Однохеадерная альтернатива библиотеки glm.



#3 OFFLINE   Yandersen

Yandersen

    Диванный теоретик

  • Админ
  • 454 сообщений
  • Откуда:Canada
  • Настоящее имя:Ян

Отправлено 12 Январь 2015 - 07:23

Добавил невекторные варианты ГЛСЛевских функций. Чтобы не конфликтовали со стандартными функциями из библиотеки math.h, скрыл ГЛСЛевские варианты под неймспейсом GLSL. Подробнее в первом посте.



#4 OFFLINE   Yandersen

Yandersen

    Диванный теоретик

  • Админ
  • 454 сообщений
  • Откуда:Canada
  • Настоящее имя:Ян

Отправлено 21 Январь 2015 - 22:10

Расширил поддержку dvecn векторов - в оригинальном GLSL4.5 некоторые функции определены лишь для vecn векторов (sin, cos, exp и пр.), но я решил, что нет смысла в таком ограничении, так что всё, что применимо к vecn теперь имеет аналог и для dvecn.







Темы с аналогичным тегами OpenGL, GLSL, vector, vec2, vec3, vec4

Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 анонимных