Подведи собственные итоги года совместно с YOUGAME и забери ценные призы! Перейти

Вопрос Как нарисовать круг в Дх11

  • Автор темы Автор темы Dimedrol
  • Дата начала Дата начала
imgui слишком грязно написано.
Со смеху чуть не разбил самому себе ебало молотком.

А можете ли вы аргументировать написанное? Сомневаюсь, что вы сможете написать хоть что-то подобное
 
Такая реализация не подходит.
А чем конкретно не устраивает? :CoolStoryBob:

А imgui слишком грязно написано.
Так если тебя не устраивает имгуи - делай свое. но ты же опять таки заюзал чужую базу. в чем была проблема основать свой рендер на дравлисте имгуи взяв его за базу - ни кто не знает. Хоть и в имгуи насрано, но база для рендера там отличная. бери и строй на ней свой код.


К тому же все рендеры в 2д примитивны, все за тебя уже давно сделали. в чем твоя проблема? даже код выше работает нормально
 
Какой-то цирк в треде. Тсу помогают, а он в ответ всех засирает, при этом не предоставив нормальных "требований к помощи" :/
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Какой-то цирк в треде. Тсу помогают, а он в ответ всех засирает, при этом не предоставив нормальных "требований к помощи" :/
Чем помогают? Продолжая дальше писать про ImGui?
Или линию загнать в цикл и нарисовать круг?
 
Ну хуй знает, тебе уже каждый ответил, кому не лень. Кинули нормальный метод отрисовки круга через линии - тебе не нравится.
Могу лишь посоветовать маркером на мониторе начертить
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Чем помогают? Продолжая дальше писать про ImGui?
Или линию загнать в цикл и нарисовать круг?
ой как же так. цикл ему не нравится.

6IJxOgn.png
dv54Njw.png


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

Пожалуйста, зарегистрируйтесь или авторизуйтесь, чтобы увидеть содержимое.


Некто ничего не смог предложить, поэтому и не видел смысла делиться в отрытую. Ничего не рисуется.

Вот так рисую линию.
C++:
Expand Collapse Copy
void cRender::DrawLine(Vec2 start, Vec2 end, DWORD color)
{
    if (this->m_pDeviceContext == NULL)
        return;

    UINT viewportNumber = 1;

    D3D11_VIEWPORT vp;

    this->m_pDeviceContext->RSGetViewports(&viewportNumber, &vp);

    float xx0 = 2.0f * (start.x - 0.5f) / vp.Width - 1.0f;
    float yy0 = 1.0f - 2.0f * (start.y - 0.5f) / vp.Height;
    float xx1 = 2.0f * (end.x - 0.5f) / vp.Width - 1.0f;
    float yy1 = 1.0f - 2.0f * (end.y - 0.5f) / vp.Height;

    COLOR_VERTEX* v = NULL;

    D3D11_MAPPED_SUBRESOURCE mapData;

    if (FAILED(this->m_pDeviceContext->Map(this->m_pVertexBuffer, NULL, D3D11_MAP_WRITE_DISCARD, NULL, &mapData)))
        return;

    v = (COLOR_VERTEX*)mapData.pData;

    v[0] = COLOR_VERTEX{ D3DXVECTOR3(xx0, yy0, 0), D3DXCOLOR(color) };//
    v[1] = COLOR_VERTEX{ D3DXVECTOR3(xx1, yy1, 0), D3DXCOLOR(color) };//

    this->m_pDeviceContext->Unmap(this->m_pVertexBuffer, NULL);

    UINT Stride = sizeof(COLOR_VERTEX);
    UINT Offset = 0;

    this->m_pDeviceContext->IASetVertexBuffers(0, 1, &this->m_pVertexBuffer, &Stride, &Offset);
    this->m_pDeviceContext->IASetPrimitiveTopology(D3D11_PRIMITIVE_TOPOLOGY_LINESTRIP);
    this->m_pDeviceContext->IASetInputLayout(this->m_pInputLayout);

    this->m_pDeviceContext->VSSetShader(this->m_pVertexShader, 0, 0);
    this->m_pDeviceContext->PSSetShader(this->m_pPixelShader, 0, 0);
    this->m_pDeviceContext->GSSetShader(NULL, 0, 0);
    this->m_pDeviceContext->Draw(2, 0);
}
 
Последнее редактирование:
Со смеху чуть не разбил самому себе ебало молотком.

А можете ли вы аргументировать написанное? Сомневаюсь, что вы сможете написать хоть что-то подобное
ну код имгуи очень костыльный и не соответствует современными стандартам с++. например, в местах где можно было использовать реализации из стандартной библиотеки, придумываются свои врапперы
Пожалуйста, авторизуйтесь для просмотра ссылки.

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

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

про юи, инпут говорить не приходится, как и про всякие мелочи, как typedef'ы вместо using, typedef int для енумов, вместо нормального менеджмента файлов, NULL вместо nullptr
 
ну код имгуи очень костыльный и не соответствует современными стандартам с++
А он и не должен, его задача работать на чем угодно и чтобы его можно было воткнуть в любой проект, включая те, в которых нельзя использовать современные стандарты плюсов, сам работал в подобном проекте одно время
nullptr появился только в C++11, имгуй же избегает современные стандарты по вышеуказанным причинам
typedef'ы вместо using
абсолютно никакой разницы, пока дело не доходит до шаблонов, которые в имгуи не используются нигде, насколько я знаю
 
А он и не должен, его задача работать на чем угодно и чтобы его можно было воткнуть в любой проект, включая те, в которых нельзя использовать современные стандарты плюсов, сам работал в подобном проекте одно время

nullptr появился только в C++11, имгуй же избегает современные стандарты по вышеуказанным причинам

абсолютно никакой разницы, пока дело не доходит до шаблонов, которые в имгуи не используются нигде, насколько я знаю
наверн не буду тебя дергать больше, ну я правда не могу объяснить человеку, что из-за 1.5 инвалидов, которые до сих пор не перешли хотя бы на с++17 плохо иметь столько легаси кода
 
Назад
Сверху Снизу