OpenBRF Redux — A de-rusted, maintained, bug-fixed version of OpenBRF with 64-bit support and dark mode

Users who are viewing this thread

... The idea is to keep the program well-maintained, develop it openly, and accept suggestions and improvements from the community. :party:
Is it possible to change so that the exe automatically checks which language files are in the translations folder when the program is run, AND to use the previous language without the user having to set the language each time?

I'm not in a particular hurry, but I think it would be inconvenient to request the maintainer to add a provided language file and build each time a translator appears.

I've been translating the original openbrf_en.ts into Japanese (using Qt Linguist) for the past few days, and today I happened to come across your Redux version while looking for information on whether Marco Tarini is active.
 
Hi, @tos1. If you PM me the translation file and your e-mail address (to credit you on GitHub so that it appears as your change) I can add it to the normal Redux version without problem, I suppose I can do both, so that you can have newer external translations in case I disappear.

Marco hasn't been active since 2016-2017, I think. But you can probably e-mail him.
 
Thank you for your consent and for the information. I will start translating your Redux version once it becomes stable a bit.

Because, as you know, even if just one word changes, the relevant part of the translation file becomes useless (the original English text is displayed), and even if only a code line is shifted, many line numbers are shift and lines in Qt tool's preview will be shifted. That makes the correcting work of the translation difficult.

Actually I mistakenly translated an older version of Marco's, and it took me two extra days to write a "script to generate sed scripts" to convert it to translation for the Marco's latest version. I can't afford to repeat that process every time your Redux version is often updated.

I understand 3D and programming to some extent, but am still new to modding.:xf-smile: Translating Eärendil's guide, I'm trying some mods' brf with OpenBRF to learn how to use them. I'll write here if I notice something to improve about your Redux version from beginner's perspective.

Thank you again for the great project! Absolutely timely for me.
 
Last edited:
Because, as you know, even if just one word changes, the relevant part of the translation file becomes useless (the original English text is displayed), and even if only a code line is shifted, many line numbers are shift and lines in Qt tool's preview will be shifted. That makes the correcting work of the translation difficult.

Actually I mistakenly translated an older version of Marco's, and it took me two extra days to write a "script to generate sed scripts" to convert it to translation for the Marco's latest version. I can't afford to repeat that process every time your Redux version is often updated.
My version is more stable and complete than the original, the whole point is just bug-fixing and removing annoyances.

I don't think minor text changes should make existing Qt translations unusable, that doesn't make a lot of sense and defeats the whole point. If you upload your translation file I can take a look. The strings are 99% identical, with just a few typos fixed.
 
More updates. Download the latest version from here.
  • Fix a regression that made it impossible to change vertex animation frames on skinned meshes when the skeletal animation is set to «no animation», female armor variants still play skeletal animations just fine. Reported by @Dalion.
  • Avoid mojibake in non-English text that is hardcoded in the source code by loading the strings with UTF-8 encoding instead of Latin1.
  • Hopefully fix another regression with redo/undo/repeat in the roto-translate tool after making it possible to move the 3D camera while editing.
    • Also fix the 3D view not refreshing on Ctrl + R, when repeating the action. All this took a lot of research.
  • Make the repeat action/Ctrl+R functionality more apparent by moving it from the Tools menu to the end of the Edit menu.
    • It was almost hidden, not even long-time modders knew about it, me included. Suggested by @kraggrim.
 
More updates. Download the latest version from here.
  • Fix a bunch of typos found by @tos1 while translating, make a few hardcoded English strings translatable.
  • Add the initial version of @tos1's Japanese translation. It already covers 100% of the GUI.
  • Improve and update my Spanish translation from 14 years ago. Go figure.
 
Last edited:
More updates. Download the latest version from here.
  • Expand the weapon-measuring ruler tool to show up to 9 meters instead of 3 by default. By using the numeric input one can enlarge it and measure up to 99 meters. :fruity:
  • Add a new contextual option to reverse any skeletal animations, making them go backwards. Suggested by @Dalion.
  • Add a similar option for reversing the timeline of vertex animations in meshes. This also flips their frame times.
  • Make it so that we can move all LODs to the end of the list by holding Shift while clicking on Tools > Sort entries. Useful to make room and gaining extra clarity in big files. Suggested by @Cokjan.
  • Fix a crash reported by @NouH when reading textures with an incomplete mipmap chain, where the last mip (index 6) is 2x8 pixels.
    • Leave a bit of secret extra padding for alignment just in case glGetTexImage() tries to write past the end of the decoded mipmap texture buffer and overflows the stack. Go figure.
  • Fix a few typos: action.txtactions.txt, globlalglobal, shiftShift.
  • Complete the Spanish translation with the new strings.
 
Last edited:
More updates. Download the latest version from here.
  • Make it possible to recenter objects around other objects using the Roto-translate-rescale tool; when the «Apply to last selected object only» mode is checked the existing alignment buttons now let us center our movable mesh around a metaphorical box surrounding the rest of selected meshes. Adapted from suggestions about position shift copying-pasting from @Dalion.
  • Add initial support for exporting vertex colors via the Wavefront OBJ format, a lot of 3D software like Blender supports it. Importing via the same format isn't implemented, yet. But using other formats that already carried colors, like PLY, for vertex-painted meshes is still an option.
 
Last edited:
More updates. Download the latest version from here.
  • Add support for importing Wavefront OBJ vertex colors.
    • With this we can now both import and export them, and Blender will mostly work as expected.
    • Keep in mind that we also support a fourth optional field; the alpha channel. I don't think many other programs do, but it's an option.
 
@Swyter When using "Merge frames as vertex ani" Redux (tested when merging 3 meshes) produces the animated mesh, and then proceeds to delete 2 unrelated meshes below the selected ones...
If I have a list of meshes:
A
B
C
D
E
F
G
and I select A+B+C for merging, I get this:
A
B
here is the merged one
F
G
So, instead of producing merged mesh, and deleting ABC, it deletes CDE instead...
Pretty convinced original OpenBrf was not doing that, but only 99% sure of it.
Also, after performing the weirdness described above, if I Ctrl+Z once, instead of undoing 1 operation, it undoes:
3. deleting the meshes
2. creating the merged mesh
1. whatever operation I performed before
It's very weird.
What's even weirder, is if I Ctrl+Y to redo the last operation after doing all of the above, it will only redo operation #1, but not #2 and #3.

As an easy workaround, I suggest to simply disable deleting meshes after creating merged mesh.
When we combine meshes using other methods the originals don't get deleted, so not deleting in this case would uniform how the program works.
 
Last edited:
@Swyter Rotating three alignment buttons for Y-translation by 90 degrees seems more intuitive. If my understanding is right, like this (retouched image):

alignbtn1a.jpg
 
Hey, I have a question: I imported a texture as both a material and texture, but now all the models are transparent (including the ones that don't use said material\ texture). How do I deactivate transparency? There's an option for it in the 'view' section, but it's greyed out. :neutral:
 
Last edited:
A screenshot, a sample file and knowing if this also happens in the original OpenBRF would help. Does it still happen after saving and restarting? You can disable preview shaders in the right-most top bar menu option. There's also an option to diagnose the current preview shader mode and why it's like that depending on the material properties.
 
A screenshot, a sample file and knowing if this also happens in the original OpenBRF would help. Does it still happen after saving and restarting? You can disable preview shaders in the right-most top bar menu option. There's also an option to diagnose the current preview shader mode and why it's like that depending on the material properties.
Update: It's happening if I edit the .brf file in any way (import, delete, copy items). It returns to normal if I restart the program. Saving works fine. It didn't happen in the original OpenBrf.
As you can see from the image, the thigh areas are transparent and the rim of the undershirt can be seen.
8QjvbhR.png
 
Last edited:
@Swyter would it be possible to make OpenBrf accept file paths with full Unicode support? I had trouble reimporting an OBJ mesh if the path had • in it, or ! or even ą
Should be fixed in the latest version. Give it a go when the GitHub bot finishes building the source code.

It already worked for a few of them, like SMD files, because Marco switched to UTF-16/wchar_t there, probably from previous reports, but many of the others (like the OBJ importer) used plain char paths converted as Latin 1 instead of UTF-8. So that function ate all the non-English glyphs.
 
More updates. Download the latest version from here.
  • Make OpenBRF accept Unicode/non-English glyphs for paths when importing or saving OBJ files.
    • Plus, avoid mojibake in imported names for meshes and collision bodies. Suggested by @Erundil.
  • Make the roto-translate tool alignment icons vertical for the Y axis, making them way more intuitive to use. Suggested by @tos1.
 
希望已修复,请检查最新版本。令人惊讶地容易找到和修复,至少与上面的双击错误相比,只是必须扭曲一条直线.
Boss, please add a function to rename the .lod's backstamp in batches. Because my computer is not good, I can only use the lod low model. I want to generate the .lod and use its low model. Please, I am from China loves this game very much
 
Back
Top Bottom