делай через тениКак сделать глоу на линию? Буду благодарен помощи.
addlinemulticolor или как там оноКак сделать глоу на линию? Буду благодарен помощи.
draw_list->AddRectFilledMultiColor(p, ImVec2(p.x + cal_text.x + 10, p.y + cal_text.y),
glow_clr_first,
glow_clr_first,
glow_clr_second,
glow_clr_second
);
не делай такКод:for (int i = 5; i > 0; i--)) draw_list->AddLine(p - (5 - i), p2 - (5 - i), ImColor(r,g,b, i * 50));
и не делай такaddlinemulticolor или как там оно
glow_clr_first = ImColor(g_cfg.menu.watermark_color.r(), watermark_color.g(), watermark_color.b(), 125), // note: glow color with alpha 125Код:draw_list->AddRectFilledMultiColor(p, ImVec2(p.x + cal_text.x + 10, p.y + cal_text.y), glow_clr_first, glow_clr_first, glow_clr_second, glow_clr_second );
glow_clr_second = ImColor(watermark_color.r(), watermark_color.g(), watermark_color.b(), 0); // note: glow color with alpha 0
так загугли, там в репе уже был такой вопросКак сделать глоу на линию? Буду благодарен помощи.
с какой версии есть тени?в имгуи есть тени!!!!
бранч с тенями давно существует вродес какой версии есть тени?
#include "imgui.h"
#include "imgui_impl_opengl3.h"
#include "imgui_impl_glfw.h"
#include <GL/glew.h>
#include <GLFW/glfw3.h>
const char* vertexShaderSource = R"(
#version 330 core
layout(location = 0) in vec2 inPosition;
out vec2 TexCoord;
void main() {
gl_Position = vec4(inPosition, 0.0, 1.0);
TexCoord = (inPosition + 1.0) / 2.0;
}
)";
const char* fragmentShaderSource = R"(
#version 330 core
in vec2 TexCoord;
out vec4 FragColor;
uniform sampler2D image;
uniform vec4 glowColor = vec4(1.0, 1.0, 1.0, 1.0);
uniform float glowIntensity = 1.0;
void main() {
vec4 baseColor = texture(image, TexCoord);
vec4 glow = texture(image, TexCoord) * glowIntensity;
FragColor = baseColor + glowColor * glow;
}
)";
GLFWwindow* window;
void setupImGui()
{
if (!glfwInit())
{
return;
}
window = glfwCreateWindow(800, 600, "glow", NULL, NULL);
if (!window)
{
glfwTerminate();
return;
}
glfwMakeContextCurrent(window);
if (glewInit() != GLEW_OK)
{
glfwTerminate();
return;
}
IMGUI_CHECKVERSION();
ImGui::CreateContext();
ImGuiIO& io = ImGui::GetIO();
(void)io;
ImGui_ImplGlfw_InitForOpenGL(window, true);
ImGui_ImplOpenGL3_Init("#version 330 core");
ImGui::StyleColorsDark();
}
int main()
{
setupImGui();
GLuint vertexShader = glCreateShader(GL_VERTEX_SHADER);
glShaderSource(vertexShader, 1, &vertexShaderSource, NULL);
glCompileShader(vertexShader);
GLuint fragmentShader = glCreateShader(GL_FRAGMENT_SHADER);
glShaderSource(fragmentShader, 1, &fragmentShaderSource, NULL);
glCompileShader(fragmentShader);
GLuint shaderProgram = glCreateProgram();
glAttachShader(shaderProgram, vertexShader);
glAttachShader(shaderProgram, fragmentShader);
glLinkProgram(shaderProgram);
glUseProgram(shaderProgram);
GLint glowColorLoc = glGetUniformLocation(shaderProgram, "glowColor");
glUniform4f(glowColorLoc, 1.0f, 1.0f, 1.0f, 1.0f);
GLint glowIntensityLoc = glGetUniformLocation(shaderProgram, "glowIntensity");
glUniform1f(glowIntensityLoc, 0.5f);
while (!glfwWindowShouldClose(window))
{
glfwPollEvents();
ImGui_ImplOpenGL3_NewFrame();
ImGui_ImplGlfw_NewFrame();
ImGui::NewFrame();
ImGui::Begin("gl_img");
ImGui::Image((void*)textureID, ImVec2(800, 600));
ImGui::End();
ImGui::Render();
glUseProgram(shaderProgram);
ImGui_ImplOpenGL3_RenderDrawData(ImGui::GetDrawData());
glfwSwapBuffers(window);
}
ImGui_ImplOpenGL3_Shutdown();
ImGui_ImplGlfw_Shutdown();
ImGui::DestroyContext();
glfwDestroyWindow(window);
glfwTerminate();
return 0;
}
Проект предоставляет различный материал, относящийся к сфере киберспорта, программирования, ПО для игр, а также позволяет его участникам общаться на многие другие темы. Почта для жалоб: admin@yougame.biz