Giter VIP home page Giter VIP logo

infiniteexplorer's Introduction

infiniteExplorer

A GUI frontend for libInfinite

libInfinite is based on HIMU by MontagueM (https://github.com/MontagueM/HaloInfiniteModuleUnpacker).

Making the contents of the module available by mounting them requires FUSE3 on linux or WinFSP on windows. This feature is optional though.

Credits

HIMU and HIME by MontagueM
detex by Harm Hanemaaijer and Contributors (see here for the license)
stb_image_write used for texture export, see source for authors

Requirements

The 3D viewer requires OpenGL 4.6, but everything else works without it.

FAQ

Why is it crashing when I load the modules?

You probably have an old version of infiniteExplorer. Check if a nightly build (or a fresh build from source) works. If those still don't work, please open an issue if there isn't already one.

WinFsp complains: FSD not found

There probably was an update to WinFSP. Replace winfsp-x64.dll with the file from C:\Program Files (x86)\WinFsp\bin\winfsp-x64.dll, that should fix it.

Download

Stable

The releases on github should be somewhat stable. To use them, download and unpack the archive and run the executable. The windows releases contain all required libraries, on linux, GTKmm3 has to be installed (at least version 3.24).

Nightly

Nightly builds are currently only available for windows (if you'd like nighly builds for linux as well, please open an issue and I can add a job for linux too).

You can download the latest nightly build here with or here without fuse.

To run a nightly build, download the latest release, unpack it, and replace infiniteExplorer.exe with the exe from the nightly build.
Resource files likely won't be added very often as most things are done in code, including UI layout, but if the program crashes with an error saying some file could not be opened, download the missing file from this repository and place it in the location where the program is looking for it.

Building

Linux

Building for linux is rather simple. Dependencies are

  • gtkmm-3.0-dev
  • linoodle liblinoodle.so needs to be copied into libInfinite/, as does oo2core_8_win64.dll
  • libfuse3-dev (optional)
  • glfw3 (libglfw3-dev)
  • glew (libglew-dev)
  • glm (libglm-dev)
  • libassimp-dev
  • libpng-dev
  • libpng++-dev

to compile, run

mkdir build
cd build
cmake ..
make

Windows

InfiniteExplorer can be built on Windows using mingw64. Since at least GTK3.24 is needed, not all mingw64 packages will work, as some only provide older versions (Cygwin only has 3.22, which is too old). I recommend MSYS2.

The packages which have to be installed from MSYS2 are

mingw-w64-x86_64-gcc
mingw-w64-x86_64-gtkmm3
mingw-w64-x86_64-cmake
mingw-w64-x86_64-glew
mingw-w64-x86_64-glfw
mingw-w64-x86_64-glm
mingw-w64-x86_64-assimp
mingw-w64-x86_64-libpng
mingw-w64-x86_64-jsoncpp

The build process is like it is on linux, except that oodle has to be specified manually, and pkg-config doesn't work as nicely for WinFSP

mkdir build
cd build
env PKG_CONFIG_PATH="$PKG_CONFIG_PATH:/c/Program Files (x86)/WinFSP/lib" cmake -DOODLE_LIBRARY=<path/to/oodle.dll> -DDOWNLOAD_PNGPP=ON ..
make

Use cmake -DOODLE_LIBRARY=<path/to/oodle.dll> .. -DFUSE=OFF to build without fuse.

You can run the resulting infiniteExplorer.exe from within the mingw64 shell, but if you want to use it outside of the mingw64 environment, you'll need to copy the required DLLs into the folder that the exe is in (I don't know for certain which ones are needed, I just copied all except the ones that didn't look like they were needed, so there are probably some unneeded ones in the releases). The gdk-pixbuf loaders have to be copied from the lib/ folder into a lib/ folder in the same directory as infiniteExplorer.exe, and the GSettings schema and icons have to be copied into a share/ folder. The libraries, pixbuf-loaders, GSettings schema and icon theme can just be copied from the mingw64 root.

infiniteexplorer's People

Contributors

coreforge avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.