Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[pull] master from guillaumechereau:master #54

Merged
merged 129 commits into from
Apr 26, 2024
Merged

Conversation

pull[bot]
Copy link

@pull pull bot commented Dec 28, 2023

See Commits and Changes for more details.


Created by pull[bot]

Can you help keep this open source service alive? 💖 Please sponsor : )

So that the import works better on Unreal Engine.
@pull pull bot added the ⤵️ pull label Dec 28, 2023
The inkscape export call was not working anymore.  Use cairosvg instead
now.
Not very useful I think.
It is broken, and I don't think we need it anyway.
Properly pass the target count as argument instead of setting it to
zero.
Trying to make the style of the app a bit more modern, while also
simplifying the UI code.

- Redo all the icons with a flatter style.

- Redo both the dark and light theme.  Remove the original 'dark green'
  theme for now.

- Put the windows on top of the 3d view, instead of the view being a
  separate window.
Add meshoptimizer and boostrap icons.
Makes the code a bit cleaner like that.
Still a bit experimental.
The color lightning effect was too strong.
Cannot use drag for delta operations.
Later should probably add the option to manually specify the origin.
We should not assume that the material pointer is not changing.

Should we replace it with an index maybe?
Will need to make sure this does not affect the performances, since this
work by computing the hash of the image at each frame!
guillaumechereau and others added 29 commits March 11, 2024 09:46
So that we can control the size/position with the rest of the UI
elements.
Since we reset the input string for imgui.

Maybe we should simplify this.
So that we can later add more options from it.
* Initialize graphics context in png_export

* Signed declaration
Fix grammar a bit, and remove example about splitting commits into
smaller chunks, since I don't want people to overdo it either.
So that we can remove some clutter in the tools panel.
Without this the padding was slightly larger in layers compared with
other lists.
Because I would like to support auto registered filters, with optionaly
shortcuts, but without having to manually add an action for each of
them.

I replaced the fixed size array with an stb array that can dynamically
grow.

Untested.
Filters are a bit similar to tools, with a few difference:

- they only have a UI callback, but no ability to draw (for now at
  least).

- They don't require any icon or fixed action id, so we can more easily
  add filters: just need to add a c file with the FILTER_REGISTER macro.

- They show up in a special menu, instead of in the tool panel.

The idea is to use the filters for operations that don't require a full
drawing tool, like color correction, voxel effects, etc.

Still a work in progress.
* Implement layer wrapping

* Make the wrap panel reusable

* Better name for the "wrap box"

* Support wrapping the selection

* Fix image history after wrapping selection

* Only show wrap panel for visible layers

* Move the wrap box to a new filter

* Tweak the wrap GUI a bit

* Implement the wrap filter

* Remove unused function
Volume.h should only have very low level function.  Here I moved the
function directly in the wrap filter, since this is a function very
specific to this filter.

Also fixed the code style a bit: moved variable declarations at the top
of the function, and fixed compilation warning.
Not needed anymore since we have the 'wrap' filter now that can be used
as an example.
As a better way to get the user config directory.  Still experimental,
but the idea is that it should later allow to have several directory for
things like scripts, palettes, etc.

Might break some stuffs in the code.
I prefer it like that, trying to follow the convention that all
functions from a given module should start with the module name.
Untested for now, since I did this on a Mac.  This works by iterating
/etc/goxel from sys_iter_paths with SYS_LOCATION_CONFIG.

Would probably need to add some options to this function to specify if
we want to skip non present or non readable directories.
gcc doesn't like when we use snprintf to concatenate buffers that can
maybe truncate the result.

Fix that by lowering the max path size for directories only.

Not very clean but I am not sure how to fix that in a better way.
@pull pull bot merged commit 68f63e5 into Mu-L:master Apr 26, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants