Forum Replies Created
-
AuthorPosts
-
Thanks @cocon I’ll do some exploring with this new information!
@amon you should be able to just place it anywhere and compile/run the .monkey2 file, it’s the wrapper AND example in one file.
Though you’ll probably have to be using M2 with MSVC (20017 I think?) and x64, since that’s what I compiled the libui lib for.
Otherwise you’ll probably have to recompile libui yourself.
That’s why I think it needs to be compiled with M2, so that it works like every other M2 module.Here’s what I’ve got so far: https://github.com/Hezkore/m2libui
And Windows executable: http://hezkore.com/release/m2libui/There are some problems with it, and I’ve clearly shown them in the code (Look for ' PROBLEM)
So to clear up any confusion, read the ' PROBLEM and ' NOTICEin the code before you do anything!
Those are also the parts I need help with.About 80% or so of the gadgets are there.
Missing some ‘Font’ and ‘Color’ buttons.
There are also some ‘Area’ Structs I haven’t quite figured out yet.
But “actions”, like OnClickedetc. works.I think it needs another layer ontop of this (so we’re not calling raw Extern funcs) to be more user friendly.
But yeah, it works pretty good and it’s getting there!
Reminds me a bit of MaxGui.With a bit of work; I think it might just be what Monkey2 needs!
Oh wow I had no idea..
I’ll probably stick with Next and Wend, for readability (like nero said) but good to know!Heh yeah maybe I should rename it.
Most other applications I’ve used with these kinds of things have called it “formatting”, so I just went with that. ¯\_(ツ)_/¯A good use would perhaps be for Ted2Go’s output folder.
So instead of it always building to “<title>.buildv<m2ver>” it could use this and the users themselves could decide where they want the output.
For example %source_title%.buildv%m2cc_version% would be the same as what we have now.
But I’d probably want something like $if(%source_folder_name%,"src",../output,output) where it would just output to the folder “output” but if it’s inside a folder called “src” I’d want the output to instead be in the previous folder, so not to clutter up the “src” folder.Same for the product folder.
Head over to your Monkey2 folder, then go to ” modules/mojo3d/tests/ ”
You’ll have a bunch of examples there and some of them load models, so you could just copy that.For OBJ loading you’ll have to do #Import “<mojo3d-loaders>”
But I would recommend exporting to GLTF or GLB using Blender, as those are supported by Mojo3D directly.
Other formats are loaded using “assimp”Alpha is just as you wrote it.
canvas.Color=New Color(1,0,0,0.5) where the last parameter is alpha.
Though I don’t think Mojo3D supports it?Mojo3D entities has “Parents” if that’s what you mean?
@Mark Sibly the artifact are still there after using canvas.Flush() and/or opengl.glFlush()
Hehe you sure do like “Hollow” eh?
Well I’m glad someone likes it!I’ve said it before, but I’ll say it again; I think the way to go is to have a sort of “setup” the first time Ted2Go is started.
It could ask things like “What theme do you want?” with a list showing all themes and displaying them in real-time.
And also a few other things, like how auto-complete should work.That way there is no “default”, and it’s instead tailored to the user.
Aha, I’ve been having similar issues.
I added a bunch of particles to a stack and tried to remove them almost at the same.
I kept getting some weird errors by doing so.I’m not sure I understand the ‘solution’, but good to know!
But why isn’t Monkey 2 doing this itself?
Is there any benefits to it acting this way?Monkey 2 on macOS works great here, no stuttering or any issues
And that’s on a MacBook from 2009.The windows machines I think it’s becuase they only have 8GB of RAM, and that makes Monkey2 slow of course.
My test machine for low-end stuff runs Windows 10 with 4GB (sometimes 2GB when I’m really curious) and Monkey 2 runs really well there as well.
Oh sorry, yeah.. didn’t notice that little EmissiveFactor call.
This is actually part of the Ted2Go “Simple Mojo3d app” template, so that EmissiveFactor wasn’t something I added.But either way, I’m still getting glitchy stuff without the EmissiveFactor color.

I’ve tested this on a few GPUs I have here, they’re all Ati cards though.
But all running a few different versions of the Ati drivers.
The above GIF was recorded on a Radeon RX 460 with the latest drivers.Here’s the same thing, but with some 2D canvas calls.

Sorry! I made one last night, but forgot to post it heh.
First post updated.I think I’ve managed to get it working… It’s still compiling so not sure, but the ‘cl.exe’ error isn’t showing up at least.
What I did was compile it once without MSVC, which got me the new “mx2cc_windows.exe” compiler.
And after that, MSVC seems to compile just fine.ActionScript123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169'Use msvc 2017 community edition (mainly for x64 support, but it's also the latest/greatest).'MX2_USE_MSVC=1'Build architecture: x86 or x64, x64 only working with msvc.'MX2_ARCH_WINDOWS=x64'Semi-colon separated list of module root dirs, relative to MX2_HOME or absolute.''mx2cc always adds local modules/ dir to start of list.''MX2_MODULE_DIRS=modules;modules_ext'If you change anything below, you should rebuild all!'***** WINDOWS DESKTOP TARGET - MINGW *****'Note: Requires MinGW compilers+build tools, see: http://monkeycoder.co.nz/monkey2-files.''(Note: TDM GCC not recommended, as it uses SJLJ exceptions which are very slow)'PATH=${MX2_HOME}\devtools\i686-6.2.0-posix-dwarf-rt_v5-rev1\mingw32\bin;${PATH}'Need this to override installed mingw.'GCC_EXEC_PREFIX='Linker optionsMX2_LD_OPTS_WINDOWS=-s -static -m32MX2_LD_OPTS_WINDOWS_DEBUG=MX2_LD_OPTS_WINDOWS_RELEASE='C Compiler options. Note: -D_WIN32_WINNT=0x0601 means headers for Windows 7, ie: Windows 7 is min SDK!MX2_CC_OPTS_WINDOWS=-std=gnu99 -D_WIN32_WINNT=0x0603 -m32MX2_CC_OPTS_WINDOWS_DEBUG=-OsMX2_CC_OPTS_WINDOWS_RELEASE=-O3 -DNDEBUG'C++ Compiler optionsMX2_CPP_OPTS_WINDOWS=-std=c++11 -D_WIN32_WINNT=0x0603 -m32MX2_CPP_OPTS_WINDOWS_DEBUG=-OsMX2_CPP_OPTS_WINDOWS_RELEASE=-O3 -DNDEBUG'***** WINDOWS DESKTOP TARGET - MSVC *****'directoriesMX2_MSVC_DIR=${ProgramFiles(x86)}\Microsoft Visual Studio\2017\Community\VCMX2_MSVC_TOOLS_DIR=${MX2_MSVC_DIR}\Tools\MSVC\14.12.25827MX2_WINDOWS_KITS_DIR=${ProgramFiles(x86)}\Windows Kits\10MX2_WINDOWS_KIT=10.0.16299.0'Linker optionsMX2_LD_OPTS_MSVC=MX2_LD_OPTS_MSVC_DEBUG=MX2_LD_OPTS_MSVC_RELEASE=MX2_CC_OPTS_MSVC=-EHs -W0 -MT -utf-8MX2_CC_OPTS_MSVC_DEBUG=-O1MX2_CC_OPTS_MSVC_RELEASE=-O2 -DNDEBUG'C++ Compiler optionsMX2_CPP_OPTS_MSVC=-EHs -W0 -MT -utf-8MX2_CPP_OPTS_MSVC_DEBUG=-O1MX2_CPP_OPTS_MSVC_RELEASE=-O2 -DNDEBUG'assembler optsMX2_AS_OPTS_MSVC=-DBOOST_CONTEXT_EXPORT='***** MSVC X86 PATHS *****MX2_MSVC_PATH_X86=${MX2_MSVC_TOOLS_DIR}\bin\Hostx86\x86MX2_MSVC_INCLUDE_X86=${MX2_MSVC_TOOLS_DIR}\include;MX2_MSVC_INCLUDE_X86=${MX2_MSVC_INCLUDE_X86}${MX2_WINDOWS_KITS_DIR}\Include\${MX2_WINDOWS_KIT}\ucrt;MX2_MSVC_INCLUDE_X86=${MX2_MSVC_INCLUDE_X86}${MX2_WINDOWS_KITS_DIR}\Include\${MX2_WINDOWS_KIT}\shared;MX2_MSVC_INCLUDE_X86=${MX2_MSVC_INCLUDE_X86}${MX2_WINDOWS_KITS_DIR}\Include\${MX2_WINDOWS_KIT}\um;MX2_MSVC_LIB_X86=${MX2_MSVC_TOOLS_DIR}\lib\x86;MX2_MSVC_LIB_X86=${MX2_MSVC_LIB_X86}${MX2_WINDOWS_KITS_DIR}\Lib\${MX2_WINDOWS_KIT}\ucrt\x86;MX2_MSVC_LIB_X86=${MX2_MSVC_LIB_X86}${MX2_WINDOWS_KITS_DIR}\Lib\${MX2_WINDOWS_KIT}\um\x86;'***** MSVC X64 PATHS *****MX2_MSVC_PATH_X64=${MX2_MSVC_TOOLS_DIR}\bin\Hostx64\x64MX2_MSVC_INCLUDE_X64=${MX2_MSVC_TOOLS_DIR}\include;MX2_MSVC_INCLUDE_X64=${MX2_MSVC_INCLUDE_X64}${MX2_WINDOWS_KITS_DIR}\Include\${MX2_WINDOWS_KIT}\ucrt;MX2_MSVC_INCLUDE_X64=${MX2_MSVC_INCLUDE_X64}${MX2_WINDOWS_KITS_DIR}\Include\${MX2_WINDOWS_KIT}\um;MX2_MSVC_INCLUDE_X64=${MX2_MSVC_INCLUDE_X64}${MX2_WINDOWS_KITS_DIR}\Include\${MX2_WINDOWS_KIT}\shared;MX2_MSVC_LIB_X64=${MX2_MSVC_TOOLS_DIR}\lib\x64;MX2_MSVC_LIB_X64=${MX2_MSVC_LIB_X64}${MX2_WINDOWS_KITS_DIR}\Lib\${MX2_WINDOWS_KIT}\ucrt\x64;MX2_MSVC_LIB_X64=${MX2_MSVC_LIB_X64}${MX2_WINDOWS_KITS_DIR}\Lib\${MX2_WINDOWS_KIT}\um\x64;'***** EMSCRIPTEN TARGET *****'Note: Requires Emscripten SDK, see: https://github.com/juj/emsdk/blob/master/README.md'Add mserver_winnt emscripten mini-server/launcher.'MX2_MSERVER="${MX2_HOME}\devtools\mserver-v86c\mserver_winnt.exe"'Linker optionsMX2_LD_OPTS_EMSCRIPTEN=-s USE_SDL=2 -s TOTAL_MEMORY=268435456 -s DISABLE_EXCEPTION_CATCHING=1MX2_LD_OPTS_EMSCRIPTEN_DEBUG=-s ASSERTIONS=2MX2_LD_OPTS_EMSCRIPTEN_RELEASE='C Compiler optionsMX2_CC_OPTS_EMSCRIPTEN=-std=gnu99 -Wno-all -s -s USE_SDL=2 -s TOTAL_MEMORY=268435456 -s DISABLE_EXCEPTION_CATCHING=1MX2_CC_OPTS_EMSCRIPTEN_DEBUG=-Os -s ASSERTIONS=2MX2_CC_OPTS_EMSCRIPTEN_RELEASE=-O3 -DNDEBUG'C++ Compiler optionsMX2_CPP_OPTS_EMSCRIPTEN=-std=c++11 -Wno-all -s USE_SDL=2 -s TOTAL_MEMORY=268435456 -s DISABLE_EXCEPTION_CATCHING=1MX2_CPP_OPTS_EMSCRIPTEN_DEBUG=-Os -s ASSERTIONS=2MX2_CPP_OPTS_EMSCRIPTEN_RELEASE=-O3 -DNDEBUG'***** ANDROID TARGET *****'Note: Requires Android Studio + Android NDK, see: https://developer.android.com/studio/index.html'This is where *my* ndk-bundle is located - yours is probably somewhere else!''For android builds, you need to either set this correctly or make sure 'ndk-build' is available from the command line.''PATH=D:\devtools\Android\sdk\ndk-bundle;${PATH}'Controls APP_ABI in Application.mk for NDK'MX2_ANDROID_APP_ABI=armeabi-v7a x86'MX2_ANDROID_APP_ABI=all'Controls APP_PLATFORM in Application.mk for NDK'MX2_ANDROID_APP_PLATFORM=android-14'Android app compiler Compiler flags'MX2_ANDROID_APP_CFLAGS=-std=gnu99 -fno-stack-protector -wMX2_ANDROID_APP_CPPFLAGS=-std=c++11 -fno-stack-protector -frtti -fexceptions -w'Controls version of STL used by android apps.'MX2_ANDROID_APP_STL=c++_static'***** RASPBIAN *****MX2_RASPBIAN_TOOLS=${MX2_HOME}\devtools\SysGCC\Raspberry\bin'Linker optionsMX2_LD_OPTS_RASPBIAN=-s -staticMX2_LD_OPTS_RASPBIAN_DEBUG=MX2_LD_OPTS_RASPBIAN_RELEASE='C Compiler optionsMX2_CC_OPTS_RASPBIAN=-std=gnu99MX2_CC_OPTS_RASPBIAN_DEBUG=-OsMX2_CC_OPTS_RASPBIAN_RELEASE=-O3 -DNDEBUG'C++ Compiler optionsMX2_CPP_OPTS_RASPBIAN=-std=c++11MX2_CPP_OPTS_RASPBIAN_DEBUG=-OsMX2_CPP_OPTS_RASPBIAN_RELEASE=-O3 -DNDEBUGAwesome, thanks Mark.
I’ll wait for it to be added to std then
-
AuthorPosts