imgui icon indicating copy to clipboard operation
imgui copied to clipboard

Gallery: Post your screenshots / code here (PART 13)

Open ocornut opened this issue 4 years ago • 53 comments

This is Part 13, I am splitting issues to reduce loading times and avoid github collapsing messages.

Browse all threads and find latest one to post to using the gallery label.

Also see: Software using dear imgui (you can help complete the list!)

You can post your screenshots here!

ocornut avatar Feb 05 '21 13:02 ocornut

Starting the topic with some impressive stuff gathered around:

@felixfaire: "Hey all, I used imgui to make this app with Cinder. (with a bit of styling)" MW_RR_PentagramBlog_images_new2

@IronicallySerious: "Did some massive UI refactors (aka pickup up other designs online and tweaked the values a bit :p) in our engine" Rootex Editor

Alyx: "model viewer and live texture editing tool using imgui" Alyx's model viewer

Spotify client (using internal Spotiy API) Video: https://twitter.com/rogueops/status/1348956562254139392 Pär Bohrarper - Hackdays + Dear ImGui + FFmpeg

Photon 3D LUT Editor by @PirminStraub and team https://github.com/ocornut/imgui/discussions/3792 https://www.color.io/photon Overview_Operate_Spindel Snapshot Mixer

ocornut avatar Feb 05 '21 14:02 ocornut

This isn't as pretty as other projects, but might be useful for some, it's available here.

This is a side project, which I'm calling ImControl. One pushes transformations to a stack and then places control points which can then be dragged. The key point is that the transformations depend on parameters (passed as pointers) and dragging the control points feeds back to these parameters. One doesn't have to worry about how to do this, all the vector calculus / linear algebra happens in the background.

Fractal tree editor arm_example

The API is still in flux, but here is the code for the arm example for anyone interested (edit: best to check out the repo, linked above):

static float base_rotation = 0.0f;
static float base_angle = 0.1f;
static float elbow_angle = 0.2f;

// Begin the viewport, filling available space
ImControl::BeginControlPointView("arm", { -1, -1 }, { 1, 1, 1, 1 });

// Push projection and camera matrices
ImControl::PushPerspectiveMatrix(45.0f / 180.0f * 3.14159f, ImControl::GetControlPointViewAspectRatio(), 0.01f, 10.0f);
ImControl::PushLookAtMatrix({ 0.0f, 0.9f, -1.5f, 1.0f }, { 0, 0.5, 0, 1 }, { 0, -1, 0, 0 });

ImControl::PushRotationAboutY(&base_rotation);  // Rotate arm

ImControlPointFlags flags = ImControlPointFlags_DrawControlPointMarkers | ImControlPointFlags_DrawParamDerivatives;

ImControl::ControlPoint({ 0.2f, 0, 0, 1.0f }, &base_rotation, flags, 0, 0.0375f, { 1, 0, 1, 1 });  // Controls Rotation
ImControl::StaticControlPoint({ 0.0f, 0, 0, 1.0f }, flags, 0, 0.025f, { 1, 1, 1, 1 });  // Demarks base of arm

ImControl::PushRotationAboutZ(&base_angle);  // Rotate arm up and down
ImControl::PushStaticTranslationAlongY(0.5f);  // Move up to next joint

ImControl::ControlPoint({ 0.0f, -0.1f, 0.0f, 1.0f }, &base_angle, flags, 0, 0.025f, { 1, 1, 1, 1 });  // Control points along arm
ImControl::ControlPoint({ 0.0f, -0.2f, 0.0f, 1.0f }, &base_angle, flags, 0, 0.025f, { 1, 1, 1, 1 });
ImControl::ControlPoint({ 0.0f, -0.3f, 0.0f, 1.0f }, &base_angle, flags, 0, 0.025f, { 1, 1, 1, 1 });
ImControl::ControlPoint({ 0.0f, -0.4f, 0.0f, 1.0f }, &base_angle, flags, 0, 0.025f, { 1, 1, 1, 1 });
ImControl::ControlPoint({ 0.0f, -0.0f, 0.0f, 1.0f }, &base_angle, flags, 0, 0.0375f, { 1, 1, 1, 1 });  // Control point at joint

ImControl::PushRotationAboutZ(&elbow_angle);  // Bend the elbow
ImControl::PushStaticTranslationAlongY(0.4f);  // Move to end of arm

ImControl::ControlPoint({ 0.0f, -0.1f, 0.0f, 1.0f }, &elbow_angle, flags, 0, 0.025f, { 1, 1, 0, 1 });  // Control points along forearm
ImControl::ControlPoint({ 0.0f, -0.2f, 0.0f, 1.0f }, &elbow_angle, flags, 0, 0.025f, { 1, 1, 0, 1 });
ImControl::ControlPoint({ 0.0f, -0.3f, 0.0f, 1.0f }, &elbow_angle, flags, 0, 0.025f, { 1, 1, 0, 1 });
ImControl::ControlPoint({ 0.0f, -0.0f, 0.0f, 1.0f }, &elbow_angle, &base_angle, flags, 0, 0.0375f, { 1, 0, 0, 1 });  // Hand controls two angles

ImControl::ClearTransformations();
ImControl::EndControlPointView();  // Parameter changes are made here

elbow_angle = clamp(elbow_angle, 0.3f, 2.8f);  // Clamp angles after view ends
base_angle = clamp(base_angle, 0.1f, 1.4f);

jamesthomasgriffin avatar Feb 05 '21 17:02 jamesthomasgriffin

ezgif com-gif-maker

A quick layout I made, Working on some new widgets now!

shiity avatar Feb 06 '21 12:02 shiity

ImFileDialog is a file dialog library for Dear ImGui

FileDialog

dfranx avatar Feb 07 '21 18:02 dfranx

Some Screenshots of my live shader editor NoodlesPlate Im working on a UI Refactor and adding many new cool feature. Using the Docking Branch 1.81, ImGuiFreetype with Roboto font and custom icon fonts generated with ImGuiFontStudio

NoodlesPlate_Msvc_x64_LajKk48zfT devenv_hdPqSAjMYJ

aiekick avatar Feb 11 '21 07:02 aiekick

I made a small Klickbot using my framework xhfr and styled it a bit. It also renders Dear Imgui into another buffer in order to apply glow effects using glsl. You can find my other projects here. ezgif com-video-to-gif

xhighway999 avatar Feb 11 '21 16:02 xhighway999

Oh never realised ImGui had a color wheel option, great stuff! 🙂

rogueengine

gboisse avatar Feb 12 '21 20:02 gboisse

Here's a first look at my scripted thread/hlsl-shaders engine :)

scap_01

EisernSchild avatar Feb 27 '21 10:02 EisernSchild

Duckstation https://github.com/stenzek/duckstation duckstation 157884104_774294969893966_2463941389825730222_n

@soufianekhiat

I'm trying to build a collection of controls & draws which can help for my image processing/dataviz hack/prototypes.

Ycx9HI8aBP

ocornut avatar Mar 05 '21 17:03 ocornut

@ocornut do you think that it'll be good to open next threads like this in "Discussions" section from now on? I think they'll fit better there.

eliasdaler avatar Mar 10 '21 13:03 eliasdaler

Presently I think "Discussions" have missing features (no labeling) and biased design (no way to mark as resolved without stupid scoring/gamification) so at this mind I am not even sure I want Discussions, I'm just hoping Github will at least add the labeling otherwise they are not worth using ihmo.

ocornut avatar Mar 10 '21 13:03 ocornut

I decided to make it public: https://github.com/soufianekhiat/DearWidgets

Collection of Draws (from ImDrawList) and Widgets:

Some examples here:

ShaderToy (From C++ Lambda): resccaled3

Hue Selector: W0Q9VXNeGK

Ring Color: GQLfC3C7Jk

Custom Ring Color: Kt4ye6FDWq

Convex Mask: kYA3Dw6TmH

Range Select 2D: EnvhshMO1B

soufianekhiat avatar Mar 14 '21 00:03 soufianekhiat

ss1 ss2 ss3

Audio spreadsheet, or in other words, virtual modular synthesizer using spreadsheet as the user interface. I wonder if this is the first spreadsheet with ImGui? Sassy can be aquired from: https://sol-hsa.itch.io/sassy

jarikomppa avatar Mar 29 '21 11:03 jarikomppa

ImGui - perfect library with great perfomance and excelent API, and that's why we are using this in our plugin.

Plugin is free, and it's can be downloaded from https://suirless.com/

Thank's for this library

dynation

vertver avatar Apr 01 '21 07:04 vertver

Easy and cute cheat menu fT26KYLbie

wtf-keaton avatar Apr 03 '21 10:04 wtf-keaton

Easy and cute cheat menu

Some guys really like to test @ocornut patience haha.

Matheus-Garbelini avatar Apr 03 '21 12:04 Matheus-Garbelini

Easy and cute cheat menu fT26KYLbie

That looks really clean! I like it.

MoneyWasted avatar Apr 04 '21 01:04 MoneyWasted

Retro Debugger Screenshot 2021-04-04 at 02 59 58

slajerek avatar Apr 05 '21 01:04 slajerek

Been using ImGui to create a Designer for Integrated Photonics for a Startup Idea I'm pursuing (Akhetonics). Still in early development though.

Have always liked ImGui from my game-dev days, so why not for a more industrial application!

2021-04-10 AtetDesigner

Kayzaks avatar Apr 10 '21 21:04 Kayzaks

I post a couple of screen shots from my game some time ago. I have been adding more things that you may find interesting.

I have added the possibility of showing dear imgui in any angle (and interact with it).

ImGuiRot

This allows me to attach a dear imgui pane to a physic object.

ImGuiPhys

The way I do the rotations is not rendering to auxiliary buffer, I pass the clip coordinates to the shader and then it performs the clipping while drawing.

So, in the vertex shader I do (u_... are uniforms and v_... are varying):

vec4 vtx=vec4(a_VtxCoord,u_ZValue,1.0);
gl_Position = u_Matrix * vtx;

v_pos =vtx.xy;
v_clip_pos = vec2(u_ExtraParms2.x,u_ExtraParms2.y);
v_clip_pos2= vec2(u_ExtraParms2.z,u_ExtraParms2.w);
...

and then in the fragment shader:

if(v_pos.x<v_clip_pos.x || v_pos.x>=v_clip_pos2.x)
  {
    discard;
  }

if(v_pos.y<v_clip_pos.y || v_pos.y>=v_clip_pos2.y)
  {
    discard;
  }
...

(Surely the clip comparisons can be done better)

Aarkham avatar Apr 12 '21 17:04 Aarkham

Luminal Engine - a blazing-fast, easy-to-use game engine I'm working on https://github.com/LunarDiaspora/Luminal Luminal TestApplication_s987XodGuk

snightshade avatar Apr 20 '21 07:04 snightshade

made in c# using ImGui.Net by @mellinoe and some default c# win ui stuff Screenshot_2

VeryEz avatar Apr 23 '21 17:04 VeryEz

ImGui - perfect library with great perfomance and excelent API, and that's why we are using this in our plugin.

Just wondering, is there a Linux build of this VST? This looks interesting, what does it do exactly? Reverb? Guitar distortion?

wallabra avatar Apr 23 '21 19:04 wallabra

made in c# using ImGui.Net by @mellinoe and some default c# win ui stuff Screenshot_2

i have difficulites to see where is imgui. you use .net slider with other .net widgets it seems. where are the imgui widgets ?

aiekick avatar Apr 24 '21 02:04 aiekick

8th Wall's SLAM system & Omniscope

Blog post: https://www.8thwall.com/blog/post/45697581391/building-the-next-generation-of-slam-for-the-browser EzmnHF9UYAAwaaC

Dear ImGui also spotted in licence of Nier Replicant, along with Imguizmo https://user-images.githubusercontent.com/8225057/116219511-fc2b1600-a74b-11eb-8f0b-d8cd8c9b8410.jpg

ocornut avatar Apr 27 '21 09:04 ocornut

imgui in Resident Evil Village https://www.youtube.com/watch?v=n56OLUbXwAU&t=31s&ab_channel=MELOO

VeryEz avatar May 16 '21 20:05 VeryEz

Particles timeline editing with ImGui ✨

IMG_8764

gboisse avatar May 19 '21 15:05 gboisse

Cafe-Shader-Studio https://github.com/KillzXGaming/Cafe-Shader-Studio https://gbatemp.net/threads/cafe-shader-studio.587670 image

ocornut avatar May 20 '21 12:05 ocornut

A modding tool for Red Faction Guerrilla. Started off as a file viewer so it can view maps, textures, and some meshes. So far it can only edit textures.

Nanoforge_wrOXwCjWR9

Moneyl avatar May 21 '21 21:05 Moneyl

Oh never realised ImGui had a color wheel option, great stuff! 🙂

rogueengine

@gboisse Could I kindly and humbly ask for the timeline and node graph code? <3

citruslee avatar May 28 '21 08:05 citruslee