Компьютерная графика

Q & A для исследователей компьютерной графики и программистов

1
Как мне заполнить форму, состоящую из кривых Безье и прямых линий?
Я уже некоторое время работаю над графической библиотекой и дошел до того, что мне пришлось рисовать Безье и линейные шрифты. До этого момента я застрял с этим: Зеленые линии - это пути Безье, а белая часть - это то, что визуализируется. Код, который я использую для Безье, здесь . Один …

2
Что делает хорошую таблицу перестановок?
Я реализую улучшенный шум Перлина . Его ключевой особенностью для рандомизации является жестко закодированная таблица перестановок, которая дает практически случайные, но воспроизводимые градиенты в ячейках сетки. Таблица перестановок - это просто перестановка целых чисел 0..255, и обычно это следующая таблица (скопированная прямо из первоначальной реализации Perlin): {151, 160, 137, 91, …

1
Существует много языков затенения, построенных на основе GLSL или HLSL - какие проблемы они обычно решают и какие полезные улучшения они делают?
Фью, это был длинный титул. В любом случае, я задаю этот вопрос, так как мне нравится думать о разных вещах, и мне пришло в голову, что на самом деле нет простых слоев с открытым исходным кодом поверх GLSL, даже если только добавить простые вещи, такие как включает или часто используемые …
8 shader 

2
Архимедова спираль на С ++
Я пытаюсь построить x и y положения архимедовой спирали в C ++. До сих пор я пробовал что-то вроде этого, но не повезло: int dx = 0; int dy = 0; int x = 0; int y = 0; for (int i = 0; i < maxPoints; i++) { dx …
8 c++  geometry 

1
Рассчитать соотношение сторон из 2D-формы в 3D-пространстве
Учитывая 4 координаты 2D-фигуры в 3D-пространстве, я хочу вычислить ее соотношение сторон. 3D пространство создано с 2 точками схода. 4 координаты, отмеченные синим цветом, являются 2D координатами на дисплее. в примере они должны быть примерно (14, 5,5), (19, 5), (20,3, 7,3), (25,3, 6). Я не уверен, возможно ли это вообще, …

1
Почему разные результаты при изменении порядка ввода в GL_LINES?
Код: #include <math.h> #include <GL/glut.h> #pragma comment(lib, "opengl32") #include <gl/gl.h> #include <gl/glu.h> //Initialize OpenGL void init(void) { glClearColor(0, 0, 0, 0); glViewport(0, 0, 500, 500); glMatrixMode(GL_PROJECTION); glLoadIdentity(); glOrtho(0, 500, 0, 500, 1, -1); glMatrixMode(GL_MODELVIEW); glLoadIdentity(); } void drawLines(void) { glClear(GL_COLOR_BUFFER_BIT); glColor3f(1.0,1.0,1.0); glBegin(GL_LINES); glVertex3d(0.5, 0.999, 0.0f); glVertex3d(499.501, 0.999, 0.0f); glEnd(); glFlush(); …

1
Выполняются ли вызовы отрисовки параллельно, последовательно или одновременно?
Это продолжение вопроса, на который я ответил на GameDev SE. Вопрос заключался в том, является ли glDrawArraysInstanced в OpenGL параллельным при рисовании этих экземпляров? Мой ответ был в следующих строках: «Графический процессор может выполнять несколько вызовов отрисовки параллельно в зависимости от нескольких вещей, например, если два вызова отрисовки используют одни …
8 opengl  gpu 

1
Реализация текстуры возмущенного изображения на языке рендера
Я пытаюсь реализовать (в C #) алгоритм возмущения изображения, представленный в книге «Текстурирование и моделирование - К. Перлин и др.» (Стр. 91, если кто-то есть), который искажает изображение. Следующий код на языке Renderman: Доступ к текстуре Ct = texture("example.tx", s, t); заменяется point Psh; float ss, tt; Psh = transform("shader", …

1
Как многократное рассеяние Смита взаимодействует с диффузным подповерхностным рассеянием?
Многократная рассеяние Microfacet BSDFs с Смита модель бумагой описывает статистическую модель для замены маскирующей-затенения функции в microfacet BSDFs ( на которые приходятся пути с более чем одной поверхностью пересечения, установив их вклад в 0) с распределением , которое может быть Траекторией и позволяет лучу пересекать поверхность микрообъекта несколько раз перед …


1
Снимок экрана с игровым видео
Я бы хотел «зацепиться» за работающую игру, скажем Mario Bros, и захватить каждый отрендеренный кадр ... сохранив этот кадр в файл изображения. Хорошим примером чего-то подобного является FRAPS. - Примечание: я не хочу снимать весь экран / рабочий стол. Я хочу захватить целевое окно. Я посмотрел на OBS (Open Broadcasting …

1
Помогите мне узнать, как называется этот метод наложения текстур
Я нахожусь в процессе создания инструмента, который требует визуализированной текстуры, чтобы следовать контурам предмета одежды. Примером может служить этот веб-сайт https://knyttan.com/editor/jumper-editor/ . Эффект здесь достигается с помощью цветовой карты: Я посмотрел на шейдеры, которые используются для этого, и кажется, что смещение текстуры рассчитывается на основе цветовых каналов этой карты. Теперь …
8 texture  webgl 

3
Как совместить вращение по 2 осям в одной матрице
Я уже знаю о матрицах, которые я должен использовать для выполнения вращений. Если мне нужно повернуть по оси Z, а затем по оси X, я бы сделал это в 2 шага. У меня вопрос, возможно ли объединить оба поворота в одну матрицу? Буду признателен за ваш отзыв.

2
Создает ли УФ-картирование для некоторых точек 3D-модели несколько точек в 2D-проекции?
Предположим, что моя 3D-модель представляет собой пирамиду с прямоугольным основанием, и я исчисляю четыре угла основания с помощью 1, 2, 3, 4 и даю 5 верхней точке. Если я спроецирую эту пирамиду на 2D-объект в форме звезды, не будут ли все четыре внешние точки звезды связаны с точкой № 5 …

3
Как независимость от видимости радиации увеличивает используемые вычисления?
В стиле вопроса о трихоплаксе я хочу рассказать еще об одной статье в Википедии: Radiosity (компьютерная графика) . В статье говорится: Радиозависимость не зависит от точки обзора, что увеличивает объем вычислений, но делает их полезными для всех точек обзора. Техника работает только с диффузными поверхностями. Таким образом, форм-факторы могут быть …
8 radiosity 

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.