params for changing color of cpu, gpu, vram, ram and engine text

pull/58/head
FlightlessMango 4 years ago
parent 13f5de1e10
commit d8b3c3c81f

@ -1138,7 +1138,7 @@ static void compute_swapchain_display(struct swapchain_data *data)
ImGui::BeginTable("hud", instance_data->params.tableCols);
if (device_data->gpu_stats && instance_data->params.enabled[OVERLAY_PARAM_ENABLED_gpu_stats]){
ImGui::TableNextRow();
ImGui::TextColored(ImVec4(0.180, 0.592, 0.384, 1.00f), "GPU");
ImGui::TextColored(ImGui::ColorConvertU32ToFloat4(instance_data->params.gpu_color), "GPU");
ImGui::TableNextCell();
right_aligned_text(char_width * 4, "%i", gpuLoad);
ImGui::SameLine(0, 1.0f);
@ -1162,7 +1162,7 @@ static void compute_swapchain_display(struct swapchain_data *data)
}
if(instance_data->params.enabled[OVERLAY_PARAM_ENABLED_cpu_stats]){
ImGui::TableNextRow();
ImGui::TextColored(ImVec4(0.180, 0.592, 0.796, 1.00f), "CPU");
ImGui::TextColored(ImGui::ColorConvertU32ToFloat4(instance_data->params.cpu_color), "CPU");
ImGui::TableNextCell();
right_aligned_text(char_width * 4, "%d", cpuLoadLog);
ImGui::SameLine(0, 1.0f);
@ -1183,10 +1183,10 @@ static void compute_swapchain_display(struct swapchain_data *data)
for (const CPUData &cpuData : cpuStats.GetCPUData())
{
ImGui::TableNextRow();
ImGui::TextColored(ImVec4(0.180, 0.592, 0.796, 1.00f), "CPU");
ImGui::TextColored(ImGui::ColorConvertU32ToFloat4(instance_data->params.cpu_color), "CPU");
ImGui::SameLine(0, 1.0f);
ImGui::PushFont(data->font1);
ImGui::TextColored(ImVec4(0.180, 0.592, 0.796, 1.00f),"%i", i);
ImGui::TextColored(ImGui::ColorConvertU32ToFloat4(instance_data->params.cpu_color),"%i", i);
ImGui::PopFont();
ImGui::TableNextCell();
right_aligned_text(char_width * 4, "%i", int(cpuData.percent));
@ -1232,7 +1232,7 @@ static void compute_swapchain_display(struct swapchain_data *data)
}
if (instance_data->params.enabled[OVERLAY_PARAM_ENABLED_vram]){
ImGui::TableNextRow();
ImGui::TextColored(ImVec4(0.678, 0.392, 0.756, 1.00f), "VRAM");
ImGui::TextColored(ImGui::ColorConvertU32ToFloat4(instance_data->params.vram_color), "VRAM");
ImGui::TableNextCell();
right_aligned_text(char_width * 4, "%.2f", gpuMemUsed);
ImGui::SameLine(0,1.0f);
@ -1250,7 +1250,7 @@ static void compute_swapchain_display(struct swapchain_data *data)
}
if (instance_data->params.enabled[OVERLAY_PARAM_ENABLED_ram]){
ImGui::TableNextRow();
ImGui::TextColored(ImVec4(0.760, 0.4, 0.576, 1.00f), "RAM");
ImGui::TextColored(ImGui::ColorConvertU32ToFloat4(instance_data->params.ram_color), "RAM");
ImGui::TableNextCell();
right_aligned_text(char_width * 4, "%.2f", memused);
ImGui::SameLine(0,1.0f);
@ -1260,7 +1260,7 @@ static void compute_swapchain_display(struct swapchain_data *data)
}
if (instance_data->params.enabled[OVERLAY_PARAM_ENABLED_fps]){
ImGui::TableNextRow();
ImGui::TextColored(ImVec4(0.925, 0.411, 0.411, 1.00f), "%s", engineName.c_str());
ImGui::TextColored(ImGui::ColorConvertU32ToFloat4(instance_data->params.engine_color), "%s", engineName.c_str());
ImGui::TableNextCell();
right_aligned_text(char_width * 4, "%.0f", data->fps);
ImGui::SameLine(0, 1.0f);
@ -1276,7 +1276,7 @@ static void compute_swapchain_display(struct swapchain_data *data)
if (engineName == "DXVK" || engineName == "VKD3D"){
ImGui::TableNextRow();
ImGui::PushFont(data->font1);
ImGui::TextColored(ImVec4(0.925, 0.411, 0.411, 1.00f), "%s", engineVersion.c_str());
ImGui::TextColored(ImGui::ColorConvertU32ToFloat4(instance_data->params.engine_color), "%s", engineVersion.c_str());
ImGui::PopFont();
}
}
@ -1293,7 +1293,7 @@ static void compute_swapchain_display(struct swapchain_data *data)
if (instance_data->params.enabled[OVERLAY_PARAM_ENABLED_frame_timing]){
ImGui::Dummy(ImVec2(0.0f, instance_data->params.font_size / 2));
ImGui::PushFont(data->font1);
ImGui::TextColored(ImVec4(0.925, 0.411, 0.411, 1.00f), "%s", "Frametime");
ImGui::TextColored(ImGui::ColorConvertU32ToFloat4(instance_data->params.engine_color), "%s", "Frametime");
ImGui::PopFont();
}

@ -152,6 +152,11 @@ parse_str(const char *str)
#define parse_io_write(s) parse_unsigned(s)
#define parse_crosshair_color(s) parse_color(s)
#define parse_cpu_color(s) parse_color(s)
#define parse_gpu_color(s) parse_color(s)
#define parse_vram_color(s) parse_color(s)
#define parse_ram_color(s) parse_color(s)
#define parse_engine_color(s) parse_color(s)
static bool
parse_help(const char *str)
@ -297,6 +302,11 @@ parse_overlay_config(struct overlay_params *params,
params->offset_y = 0;
params->background_alpha = 0.5;
params->time_format = "%T";
params->gpu_color = strtol("2e9762", NULL, 16);
params->cpu_color = strtol("2e97cb", NULL, 16);
params->vram_color = strtol("ad64c1", NULL, 16);
params->ram_color = strtol("c26693", NULL, 16);
params->engine_color = strtol("eb5b5b", NULL, 16);
// first pass with env var
if (env)
@ -345,11 +355,24 @@ parse_overlay_config(struct overlay_params *params,
// Command buffer gets reused and timestamps cause hangs for some reason, force off for now
params->enabled[OVERLAY_PARAM_ENABLED_gpu_timing] = false;
// Convert from 0xRRGGBB to ImGui's format
params->crosshair_color =
IM_COL32(RGBGetRValue(params->crosshair_color),
RGBGetGValue(params->crosshair_color),
RGBGetBValue(params->crosshair_color),
std::array<unsigned *, 6> colors = {
&params->crosshair_color,
&params->cpu_color,
&params->gpu_color,
&params->vram_color,
&params->ram_color,
&params->engine_color
};
for (auto color : colors){
*color =
IM_COL32(RGBGetRValue(*color),
RGBGetGValue(*color),
RGBGetBValue(*color),
255);
}
printf("%i\n", params->crosshair_color);
params->tableCols = 3;

@ -83,6 +83,11 @@ extern "C" {
OVERLAY_PARAM_CUSTOM(time_format) \
OVERLAY_PARAM_CUSTOM(io_read) \
OVERLAY_PARAM_CUSTOM(io_write) \
OVERLAY_PARAM_CUSTOM(cpu_color) \
OVERLAY_PARAM_CUSTOM(gpu_color) \
OVERLAY_PARAM_CUSTOM(vram_color) \
OVERLAY_PARAM_CUSTOM(ram_color) \
OVERLAY_PARAM_CUSTOM(engine_color) \
OVERLAY_PARAM_CUSTOM(help)
enum overlay_param_position {
@ -118,7 +123,7 @@ struct overlay_params {
unsigned offset_x;
unsigned offset_y;
unsigned vsync;
unsigned crosshair_color;
unsigned crosshair_color, cpu_color, gpu_color, vram_color, ram_color, engine_color;
unsigned tableCols;
float font_size;
float background_alpha;

Loading…
Cancel
Save