They were done at some point, but then became broken. They no longer work in all of the graphics systems. I would want the original developer of the particle system extension to fix that, but I am not use if that will happen.
Also I recall the dev post stating it was completed and fully tested and on par with GM's........so I am confused.It was. It has all the features as far as I know and worked perfectly with GM's examples and games that used particles. But that happened some time ago (2012 and early 2013) and since then there has been massive changes in all graphics systems. That is probably why they don't work any more.
So with lights broken, 3d broken, particles broken, collision/path finding, and few others, what does it leave people to make ?That sadly is what happens when less than 2 people actually work on ENIGMA. And of course we also lack proper backwards compatibility testing, so when adding new stuff, old one usually breaks without knowing. So all the things you mentioned worked at one point or another, but when new stuff was added it all broke. Lights and 3D should work in GL1 just fine. They were also fixed in GL3, but that has not been merged because of some ATI bugs. Collision works as far as I know. And path finding also works, although we don't have path_start() working (as that allows modifying instance variables which are not possible via extension right now).
If I get a chance I can look at fixing these bugs, sorry Darkstar, we're just heavily understaffed, find us some more developers!
Third, OGL3 seems to display the effects properly, snowflakes, flares, clouds, smoke, explosions, etc, however the annoying fuck of a thing clears all instances in the room and impossible to re-display them, even tried the draw_self and still does not work :( So this makes effects totally fucking useless lol!I think I know why that happens. GL3 now using shaders is mandatory (so we have our own shader that is used all the time), but extension system uses it's own shader and it doesn't set our shader back afterwards. It's actually easy to fix. But the rest probably would take some tinkering.
Sname = part_system_create();
fire1 = part_type_create();
part_type_shape(fire1,pt_shape_line);
part_type_size(fire1,0.20,0.60,0,0);
part_type_scale(fire1,0.65,2.50);
part_type_color3(fire1,16749459,33023,255);
part_type_alpha3(fire1,0.04,0.06,0.07);
part_type_speed(fire1,0.70,2.60,-0.02,0);
part_type_direction(fire1,85,95,0,9);
part_type_gravity(fire1,0,270);
part_type_orientation(fire1,0,0,10,20,1);
part_type_blend(fire1,1);
part_type_life(fire1,60,80);
emitter1 = part_emitter_create(Sname);
part_emitter_region(Sname,emitter1,400,550,200,250,1,1);
part_emitter_stream(Sname,emitter1,fire1,30);
Thanks I will test this later today. You mentioned a quick fix by setting back shader, so if I understood correctly this would be a faster / more optimized way of displaying particles, but what are the downsides for this compared the the sprite_draw(ext) ?Yes, in GL3 that would technically be faster than using draw_sprite_ext() for every particle. I cannot say any specific number, but it still should be faster. When they are fixed (of if they are fixed) we could do some benchmarks. There are no real downsides besides the fact we would need to maintain more code. The draw_sprite() method also means things like lights work on particles, while if we used a custom shader they wouldn't.
1) BTW, is there a faster way to download files that have been modified instead of opening each file in a text editor copy / pasting ? Is there a way to directly download the modified files?You can do "View->Raw->Save As", but that is the same as copying. You can also download the whole branch via "Download Zip" from this page https://github.com/enigma-dev/enigma-dev/tree/particle_fix . Then copy all the files. But be careful not to overwrite your own custom changes if there are any. I just often have several version. Like enigma_master and enigma_test folders. In them I just pull all the changes via Git For Windows.
As far as speed, in a side scroller where I would use streamed particles in areas I would personally have them disabled when they are off view, I guess I see what you mean by "slower" :PIs it actually slow/slower for you? Or you cannot notice? Because I think you shouldn't really be able to notice. As I said our sprite rendering is actually quite optimized. Especially when you use the same sprite image to render a lot of sprites (just like particle systems do) and so in both GL3 and GL1 the particle system should use the batcher. Although there is possibly a bug why it doesn't (we call draw_set_blend_mode() before all sprite drawing which could make the batcher flush. I will test this later).
Yes, in GL3 that would technically be faster than using draw_sprite_ext() for every particle. I cannot say any specific number, but it still should be faster.
When they are fixed (of if they are fixed) we could do some benchmarks. There are no real downsides besides the fact we would need to maintain more code. The draw_sprite() method also means things like lights work on particles, while if we used a custom shader they wouldn't.
Is it actually slow/slower for you? Or you cannot notice? Because I think you shouldn't really be able to notice.
For the pre-made stuff (action_effect) no, did not notice. For my fire1 custom particles, I noticed, but I cannot compare to anything since they did not work for me previously :( The fire1 example is a streamed particle, first instance does not slow much, but when adding another things start to really slow down.Okay I got around to testing the draw calls and indeed blend mode caused the VBO to render and blend modes were changed per particle. So it ended up rendering 1 quad per VBO which is rubbish. With 10400 particles I got 25FPS. After I fixed that I got 140FPS now. Current progress is here:
Now I already posted my PC and GPU specs they are up to date and fast, can run all latest games at their full settings. So CPU/GPU is not a limitation.
Building for mode (0)
Cleaning up from previous executions
- Cleared parsed objects
- Cleared room entries
- Cleared shared locals list
- Cleared event info
Loading shared locals from extensions list
Location in memory of structure: 4eb62da8
Copying resources:
Copying sprite names
Copying sound names
Copying background names
Copying path names
Copying script names
Copying shader names
Copying font names [1]
Copying timeline names [kidding, these are totally not implemented :P]
Copying object names [1]
Copying room names [1]
SYNTAX CHECKING AND PRIMARY PARSING:
0 Scripts:
"Linking" scripts
`Linking' 0 scripts in 0 passes...
Completing script "Link"
Done.
1 Objects:
obj_0: 12 events:
Event[0]: Parsing 1 sub-events:
Check `obj_0::create... Done. Parse... Done.
Event[8]: Parsing 1 sub-events:
Check `obj_0::draw... Done. Parse... Done.
Creating room creation code scope and parsing
"Linking" scripts into the objects...
"Link" complete.
Tabulating maximum argument passes to each script
Finished
Writing executable information and resources.
Writing modes and settings
Writing object switch
Writing resource names and maxima
Writing events
Linking globals
Running Secondary Parse Passes
Writing object data
Writing local accessors
Writing font data
Writing room data
Writing shader data
Running make from `mingw32-make.exe'
Full command line: mingw32-make.exe Game WORKDIR="C:/ProgramData/ENIGMA/" GMODE=Run GRAPHICS=Direct3D11 AUDIO=None COLLISION=Precise WIDGETS=None NETWORKING=None PLATFORM=Win32 CXXFLAGS="-I../Additional/i686-w64-mingw32/include" COMPILEPATH="Windows/Windows" EXTENSIONS=" Universal_System/Extensions/Alarms Universal_System/Extensions/Timelines Universal_System/Extensions/Paths Universal_System/Extensions/MotionPlanning Universal_System/Extensions/DateTime Universal_System/Extensions/ParticleSystems Universal_System/Extensions/DataStructures" OUTPUTNAME="d:/tmp/egm8583723487621132820.exe" eTCpath=""
mingw32-make.exe -C ENIGMAsystem/SHELL
mingw32-make.exe[1]: Entering directory `D:/enigma/ENIGMA/enigma-dev/ENIGMAsystem/SHELL'
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Audio_Systems/None/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Bridges/Win32-Direct3D11/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Collision_Systems/Precise/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/General/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Platforms/Win32/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/Alarms/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/DataStructures/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/DateTime/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/MotionPlanning/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/ParticleSystems/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/Paths/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/Timelines/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Widget_Systems/None/
g++ -I../Additional/i686-w64-mingw32/include -IPlatforms/Win32/Info -IGraphics_Systems/Direct3D11/Info -IAudio_Systems/None/Info -ICollision_Systems/Precise/Info -IWidget_Systems/None/Info -INetworking_Systems/None/Info -IUniversal_System/Info -I. -IC:/ProgramData/ENIGMA/ -Wall -s -O3 -fno-exceptions -MMD -MP -c -o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/Timelines/timelines.o Universal_System/Extensions/Timelines/timelines.cpp
g++ -I../Additional/i686-w64-mingw32/include -IPlatforms/Win32/Info -IGraphics_Systems/Direct3D11/Info -IAudio_Systems/None/Info -ICollision_Systems/Precise/Info -IWidget_Systems/None/Info -INetworking_Systems/None/Info -IUniversal_System/Info -I. -IC:/ProgramData/ENIGMA/ -Wall -s -O3 -fno-exceptions -MMD -MP -c -o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/SHELLmain.o SHELLmain.cpp
mingw32-make.exe[1]: Leaving directory `D:/enigma/ENIGMA/enigma-dev/ENIGMAsystem/SHELL'
mingw32-make.exe[1]: Entering directory `D:/enigma/ENIGMA/enigma-dev/ENIGMAsystem/SHELL'
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Audio_Systems/None/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Bridges/Win32-Direct3D11/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Collision_Systems/Precise/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/General/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Platforms/Win32/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/Alarms/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/DataStructures/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/DateTime/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/MotionPlanning/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/ParticleSystems/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/Paths/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/Timelines/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Widget_Systems/None/
echo "// GENERATED RESOURCE FILE FRONTEND" > C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/resources.rc
for res in Preprocessor_Environment_Editable/Resources.rc; do echo "#include \"$res\"" >> C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/resources.rc; done
windres.exe -o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/resources.res -I. -IC:/ProgramData/ENIGMA/ C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/resources.rc -O coff
g++ -L../Additional/i686-w64-mingw32/lib -static-libgcc -static-libstdc++ -o "d:/tmp/egm8583723487621132820.exe" C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/SHELLmain.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/libEGMstd.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Platforms/Win32/WINDOWSjoystick.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Platforms/Win32/WINDOWSmain.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Platforms/Win32/WINDOWSregistry.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Platforms/Win32/WINDOWScallback.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Platforms/Win32/WINDOWSwindow.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Platforms/Win32/WINDOWSfilemanip.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Platforms/Win32/WINDOWSthreads.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Platforms/Win32/WINDOWSsystem.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Platforms/Win32/WINDOWSexternals.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11profiler.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11sprite.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11textures.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11colors.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11vertex.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11d3d.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11surface.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11background.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11model.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11shader.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11enable.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11draw.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11screen.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11blend.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11primitives.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DIRECTX11Std.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11tiles.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11matrix.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/General/GSfont.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/General/GSstdraw.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/General/GSsurface.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/General/GScurves.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/General/GSsprite.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/General/GSmath.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/General/GSbackground.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Audio_Systems/None/fillin.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Collision_Systems/Precise/PRECimpl.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Collision_Systems/Precise/PRECfuncs.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Collision_Systems/Precise/placeholderlinks.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Widget_Systems/None/nowidget_impl.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/CallbackArrays.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/instance_planar.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/object.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/lodepng.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/instance.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/mathnc.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/backgroundstruct.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/multifunction_variant.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/highscore_functions.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/loading.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/fontinit.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/rectpack.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/soundinit.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/darray.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/callbacks_events.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/bufferstruct.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/transform_object.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/terminal_io.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/collisions_object.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/globalupdate.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/move_functions.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/reflexive_types.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/planar_object.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/var4.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/fontstruct.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/fileio.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/lives.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/shaderstruct.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/dynamic_args.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/spriteinit.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/graphics_object.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/estring.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/backgroundinit.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/spritestruct.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/ENIGMA_GLOBALS.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/resource_data.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/image_formats.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/zlib.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/roomsystem.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/instance_system.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/depth_draw.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/var4_lua.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/Alarms/alarmcode.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/Timelines/timelines.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/Paths/path_functions.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/Paths/pathinit.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/Paths/pathstruct.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/MotionPlanning/mp_movement.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/MotionPlanning/motion_planning.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/MotionPlanning/motion_planning_struct.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/DateTime/date_time.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/ParticleSystems/PS_effects.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/ParticleSystems/PS_particle_emitter.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/ParticleSystems/PS_particle_attractor.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/ParticleSystems/PS_actions.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/ParticleSystems/PS_particle_changer.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/ParticleSystems/PS_particle_updatedraw.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/ParticleSystems/PS_particle_deflector.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/ParticleSystems/PS_particle_destroyer.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/ParticleSystems/PS_particle_particles_apiimpl.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/ParticleSystems/PS_particle_sprites.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/ParticleSystems/PS_particle_type.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/ParticleSystems/PS_particle_system_apiimpl.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/ParticleSystems/PS_particle_depths.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/ParticleSystems/PS_particle_system_manager.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/ParticleSystems/PS_particle_system.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/DataStructures/data_structures.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Bridges/Win32-Direct3D11/graphics_bridge.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/resources.res -lffi -lcomdlg32 -lgdi32 -lwinmm -lwininet -ld3dx11 -lz -ldxgi -ld3d11 -ld3dx11
C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11primitives.o:DX11primitives.cpp:(.text+0x9c): undefined reference to `enigma_user::d3d_model_create(int)'
C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11primitives.o:DX11primitives.cpp:(.text+0x14c): undefined reference to `enigma_user::d3d_model_create(int)'
C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11primitives.o:DX11primitives.cpp:(.text+0x35c): undefined reference to `enigma_user::d3d_model_create(int)'
C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11primitives.o:DX11primitives.cpp:(.text+0x40c): undefined reference to `enigma_user::d3d_model_create(int)'
C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11primitives.o:DX11primitives.cpp:(.text+0x919): undefined reference to `enigma_user::d3d_model_create(int)'
C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11primitives.o:DX11primitives.cpp:(.text+0xb09): more undefined references to `enigma_user::d3d_model_create(int)' follow
C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/backgroundstruct.o:backgroundstruct.cpp:(.text+0xbec): undefined reference to `enigma::graphics_get_texture_pixeldata(unsigned int, unsigned int*, unsigned int*)'
C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/fontstruct.o:fontstruct.cpp:(.text+0xb82): undefined reference to `enigma::graphics_get_texture_pixeldata(unsigned int, unsigned int*, unsigned int*)'
C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/spritestruct.o:spritestruct.cpp:(.text+0x14f): undefined reference to `enigma::graphics_get_texture_pixeldata(unsigned int, unsigned int*, unsigned int*)'
collect2.exe: error: ld returned 1 exit status
mingw32-make.exe[1]: *** [compile_game] Error 1
mingw32-make.exe[1]: Leaving directory `D:/enigma/ENIGMA/enigma-dev/ENIGMAsystem/SHELL'
mingw32-make.exe: *** [Game] Error 2
BTW, DX11 and DX9 does not work anymore with particles I would get a blank screen but initially before a re-install, I would get this:Yes, sorry, apparently I missed something. I fixed it now. The problem is that I didn't see the error before, because I didn't delete the ProgramData/ENIGMA/ folder. So sometimes changes I make to the code aren't actually showing up, so these kinds of bugs can happen. When I asked for a clean build I got the same error and I fixed it. (https://github.com/enigma-dev/enigma-dev/commits/particle_fix) But the bug was only in GL1.
Building for mode (0)
Cleaning up from previous executions
- Cleared parsed objects
- Cleared room entries
- Cleared shared locals list
- Cleared event info
Loading shared locals from extensions list
Location in memory of structure: 4e4caf08
Copying resources:
Copying sprite names
Copying sound names
Copying background names
Copying path names
Copying script names
Copying shader names
Copying font names [1]
Copying timeline names [kidding, these are totally not implemented :P]
Copying object names [1]
Copying room names [1]
SYNTAX CHECKING AND PRIMARY PARSING:
0 Scripts:
"Linking" scripts
`Linking' 0 scripts in 0 passes...
Completing script "Link"
Done.
1 Objects:
obj_0: 12 events:
Event[0]: Parsing 1 sub-events:
Check `obj_0::create... Done. Parse... Done.
Event[8]: Parsing 1 sub-events:
Check `obj_0::draw... Done. Parse... Done.
Creating room creation code scope and parsing
"Linking" scripts into the objects...
"Link" complete.
Tabulating maximum argument passes to each script
Finished
Writing executable information and resources.
Writing modes and settings
Writing object switch
Writing resource names and maxima
Writing events
Linking globals
Running Secondary Parse Passes
Writing object data
Writing local accessors
Writing font data
Writing room data
Writing shader data
Running make from `mingw32-make.exe'
Full command line: mingw32-make.exe Game WORKDIR="C:/ProgramData/ENIGMA/" GMODE=Run GRAPHICS=Direct3D11 AUDIO=None COLLISION=Precise WIDGETS=None NETWORKING=None PLATFORM=Win32 CXXFLAGS="-I../Additional/i686-w64-mingw32/include" COMPILEPATH="Windows/Windows" EXTENSIONS=" Universal_System/Extensions/Alarms Universal_System/Extensions/Timelines Universal_System/Extensions/Paths Universal_System/Extensions/MotionPlanning Universal_System/Extensions/DateTime Universal_System/Extensions/ParticleSystems Universal_System/Extensions/DataStructures" OUTPUTNAME="d:/tmp/egm197115060577725745.exe" eTCpath=""
mingw32-make.exe -C ENIGMAsystem/SHELL
mingw32-make.exe[1]: Entering directory `D:/enigma/ENIGMA/enigma-dev/ENIGMAsystem/SHELL'
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Audio_Systems/None/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Bridges/Win32-Direct3D11/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Collision_Systems/Precise/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/General/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Platforms/Win32/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/Alarms/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/DataStructures/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/DateTime/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/MotionPlanning/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/ParticleSystems/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/Paths/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/Timelines/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Widget_Systems/None/
g++ -I../Additional/i686-w64-mingw32/include -IPlatforms/Win32/Info -IGraphics_Systems/Direct3D11/Info -IAudio_Systems/None/Info -ICollision_Systems/Precise/Info -IWidget_Systems/None/Info -INetworking_Systems/None/Info -IUniversal_System/Info -I. -IC:/ProgramData/ENIGMA/ -Wall -s -O3 -fno-exceptions -MMD -MP -c -o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/SHELLmain.o SHELLmain.cpp
mingw32-make.exe[1]: Leaving directory `D:/enigma/ENIGMA/enigma-dev/ENIGMAsystem/SHELL'
mingw32-make.exe[1]: Entering directory `D:/enigma/ENIGMA/enigma-dev/ENIGMAsystem/SHELL'
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Audio_Systems/None/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Bridges/Win32-Direct3D11/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Collision_Systems/Precise/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/General/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Platforms/Win32/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/Alarms/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/DataStructures/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/DateTime/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/MotionPlanning/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/ParticleSystems/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/Paths/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/Timelines/
mkdir.exe -p C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Widget_Systems/None/
echo "// GENERATED RESOURCE FILE FRONTEND" > C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/resources.rc
for res in Preprocessor_Environment_Editable/Resources.rc; do echo "#include \"$res\"" >> C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/resources.rc; done
windres.exe -o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/resources.res -I. -IC:/ProgramData/ENIGMA/ C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/resources.rc -O coff
g++ -L../Additional/i686-w64-mingw32/lib -static-libgcc -static-libstdc++ -o "d:/tmp/egm197115060577725745.exe" C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/SHELLmain.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/libEGMstd.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Platforms/Win32/WINDOWSjoystick.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Platforms/Win32/WINDOWSmain.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Platforms/Win32/WINDOWSregistry.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Platforms/Win32/WINDOWScallback.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Platforms/Win32/WINDOWSwindow.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Platforms/Win32/WINDOWSfilemanip.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Platforms/Win32/WINDOWSthreads.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Platforms/Win32/WINDOWSsystem.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Platforms/Win32/WINDOWSexternals.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11profiler.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11sprite.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11textures.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11colors.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11vertex.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11d3d.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11surface.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11background.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11model.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11shader.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11enable.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11draw.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11screen.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11blend.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11primitives.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DIRECTX11Std.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11tiles.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11matrix.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/General/GSfont.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/General/GSstdraw.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/General/GSsurface.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/General/GScurves.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/General/GSsprite.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/General/GSmath.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/General/GSbackground.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Audio_Systems/None/fillin.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Collision_Systems/Precise/PRECimpl.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Collision_Systems/Precise/PRECfuncs.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Collision_Systems/Precise/placeholderlinks.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Widget_Systems/None/nowidget_impl.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/CallbackArrays.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/instance_planar.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/object.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/lodepng.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/instance.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/mathnc.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/backgroundstruct.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/multifunction_variant.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/highscore_functions.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/loading.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/fontinit.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/rectpack.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/soundinit.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/darray.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/callbacks_events.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/bufferstruct.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/transform_object.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/terminal_io.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/collisions_object.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/globalupdate.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/move_functions.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/reflexive_types.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/planar_object.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/var4.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/fontstruct.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/fileio.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/lives.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/shaderstruct.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/dynamic_args.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/spriteinit.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/graphics_object.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/estring.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/backgroundinit.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/spritestruct.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/ENIGMA_GLOBALS.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/resource_data.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/image_formats.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/zlib.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/roomsystem.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/instance_system.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/depth_draw.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/var4_lua.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/Alarms/alarmcode.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/Timelines/timelines.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/Paths/path_functions.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/Paths/pathinit.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/Paths/pathstruct.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/MotionPlanning/mp_movement.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/MotionPlanning/motion_planning.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/MotionPlanning/motion_planning_struct.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/DateTime/date_time.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/ParticleSystems/PS_effects.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/ParticleSystems/PS_particle_emitter.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/ParticleSystems/PS_particle_attractor.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/ParticleSystems/PS_actions.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/ParticleSystems/PS_particle_changer.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/ParticleSystems/PS_particle_updatedraw.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/ParticleSystems/PS_particle_deflector.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/ParticleSystems/PS_particle_destroyer.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/ParticleSystems/PS_particle_particles_apiimpl.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/ParticleSystems/PS_particle_sprites.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/ParticleSystems/PS_particle_type.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/ParticleSystems/PS_particle_system_apiimpl.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/ParticleSystems/PS_particle_depths.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/ParticleSystems/PS_particle_system_manager.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/ParticleSystems/PS_particle_system.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/Extensions/DataStructures/data_structures.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Bridges/Win32-Direct3D11/graphics_bridge.o C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/resources.res -lffi -lcomdlg32 -lgdi32 -lwinmm -lwininet -ld3dx11 -lz -ldxgi -ld3d11 -ld3dx11
C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11primitives.o:DX11primitives.cpp:(.text+0x9c): undefined reference to `enigma_user::d3d_model_create(int)'
C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11primitives.o:DX11primitives.cpp:(.text+0x14c): undefined reference to `enigma_user::d3d_model_create(int)'
C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11primitives.o:DX11primitives.cpp:(.text+0x35c): undefined reference to `enigma_user::d3d_model_create(int)'
C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11primitives.o:DX11primitives.cpp:(.text+0x40c): undefined reference to `enigma_user::d3d_model_create(int)'
C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11primitives.o:DX11primitives.cpp:(.text+0x919): undefined reference to `enigma_user::d3d_model_create(int)'
C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Graphics_Systems/Direct3D11/DX11primitives.o:DX11primitives.cpp:(.text+0xb09): more undefined references to `enigma_user::d3d_model_create(int)' follow
C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/backgroundstruct.o:backgroundstruct.cpp:(.text+0xbec): undefined reference to `enigma::graphics_get_texture_pixeldata(unsigned int, unsigned int*, unsigned int*)'
C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/fontstruct.o:fontstruct.cpp:(.text+0xb82): undefined reference to `enigma::graphics_get_texture_pixeldata(unsigned int, unsigned int*, unsigned int*)'
C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/spritestruct.o:spritestruct.cpp:(.text+0x14f): undefined reference to `enigma::graphics_get_texture_pixeldata(unsigned int, unsigned int*, unsigned int*)'
collect2.exe: error: ld returned 1 exit status
mingw32-make.exe[1]: *** [compile_game] Error 1
mingw32-make.exe[1]: Leaving directory `D:/enigma/ENIGMA/enigma-dev/ENIGMAsystem/SHELL'
mingw32-make.exe: *** [Game] Error 2
Well DX11 was never finished (or even close to being finished) so it doesn't even have code for basic drawing. So you shouldn't try to use it.
But DX9 should work. Try deleting /ProgramDATA/ENIGMA/.eobj folder. So it's a clean build. You can also try Build>Rebuild All, which should technically do the same.
When doing a clean build the particle example works for me in DX9. The "undefined reference to" basically means something hasn't been recompiled. If the clean build doesn't work, then try searching for "DX9primitives.o" or any other DX9 .o file it errors about. I had this some time ago, that Windows7 puts files into subfolders and then links them back. So the program finds the files, while the user has an empty directory at that folder. It's some kind of "Security"/Compatibility feature apparently.
C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/backgroundstruct.o:backgroundstruct.cpp:(.text+0xbec): undefined reference to `enigma::graphics_get_texture_pixeldata(unsigned int, unsigned int*, unsigned int*)'
C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/backgroundstruct.o:backgroundstruct.cpp:(.text+0xbec): undefined reference to `enigma::graphics_get_texture_pixeldata(unsigned int, unsigned int*, unsigned int*)'
C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/fontstruct.o:fontstruct.cpp:(.text+0xb82): undefined reference to `enigma::graphics_get_texture_pixeldata(unsigned int, unsigned int*, unsigned int*)'
C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/fontstruct.o:fontstruct.cpp:(.text+0xb82): undefined reference to `enigma::graphics_get_texture_pixeldata(unsigned int, unsigned int*, unsigned int*)'
C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/spritestruct.o:spritestruct.cpp:(.text+0x14f): undefined reference to `enigma::graphics_get_texture_pixeldata(unsigned int, unsigned int*, unsigned int*)'
C:/ProgramData/ENIGMA/.eobjs/Windows/Windows/Run/Universal_System/spritestruct.o:spritestruct.cpp:(.text+0x14f): undefined reference to `enigma::graphics_get_texture_pixeldata(unsigned int, unsigned int*, unsigned int*)'
Are you 100% sure DX11 worked for you before? Because that system lacks VERY important code to actually run. Even after I did the changes I couldn't compile it because it lacks functions like
"graphics_get_texture_pixeldata" which is important for the engine. DX11 was never finished as I know, so I don't see how it even ran for you. Maybe even if it did ran, it should of just showed a blank screen.
I even suggest using GL1 or GL3 instead of DX, as most people can run those just fine.
Anyway, with all the changes merged DX11 should compile (although without rendering anything just like before). Also Robert will probably update the installer later and all will be good with the world. Or we just broke the whole thing *flips table*.
I even suggest using GL1 or GL3 instead of DX, as most people can run those just fine.
Also Robert will probably update the installer later and all will be good with the world. Or we just broke the whole thing *flips table*.lmfao, I'll update as soon as you can confirm text drawing works while particles are rendering, they wouldn't for me in the example you sent me, but it could also be because I am on an out of date repo.
QuoteAlso Robert will probably update the installer later and all will be good with the world. Or we just broke the whole thing *flips table*.lmfao, I'll update as soon as you can confirm text drawing works while particles are rendering, they wouldn't for me in the example you sent me, but it could also be because I am on an out of date repo.
BTW, wouldn't a person need GL3 compliant hardware to run GL3 ? I'm assuming most people can run OGL1 :DWhile for some reason this project is some kind of magnet for bad hardware, usually in the wild you will not be able to find anything that cannot run GL3. If you try reading stuff on Stackoverflow, then even back in 2011 people were suggesting targeting GL3.1. So in 3 years I guess there is virtually no reason to. All Intel (the only culprit) GPU's that are built into CPU's also support GL3 just fine. Just like AMD CPU's do. They even support GL4 since about 2012. So there is really no reason not to use GL3. But if you don't do anything GL3 specific (like shaders), then you can run with GL1 and it might even be faster. On Windows you can use DX as well. I just mentioned that because GL is usually better maintained here.
Also, Harri, I want to take a second to mention, we are not going to drop support for the collision detection with particles, we can very easily optimize it out, colliding particles is actually a new feature of Unreal Engine 4 they do it in hardware though using OpenCL.We have deflectors and attractors now (I think) and I don't plan to remove anything. I don't think they have general purpose collision detection though. If we want to make GPU based particle system then I suggest it to be a different extension (also for compatibility). UE4 thing is cool, but I am not sure they use OpenCL though. I do know they have a clever use of depth buffer for collisions as seen in this video (https://www.youtube.com/watch?v=RURQSR788Dg), but I think they use the buffer in shaders to update particles.
Unreal Engine 4: next-gen gaming effects | fxguide
www.fxguide.com/featured/unreal-engine-4-next-gen-gaming-effects/
Oct 22, 2013 - Unreal Cascade is the Unreal Engine's built-in visual effects editor. ... GPU particle simulation and collision and more in the Unreal Engine 4 ...
Was I right to add draw_self(); in draw event after the draw_text ? That's the onlyYes, you need to draw the sprite when using the draw event. This has been true since the very beginning of GM (I guess version 1.0) and is clearly documented. http://docs.yoyogames.com/source/dadiospice/000_using%20gamemaker/events/draw%20event.html
thing that allows the sprite to display properly, otherwise only the text gets drawn and no sprite, and yes even without the draw self the text still exhibits the bug.
Also draw_self() is not listed on your wiki.
the default draw, which is when you define the sprite in the object properties and place no actions or code in the normal draw event, in which case GameMaker: Studio will draw that sprite, but note that any transforms you perform in other events to change the image scale, index, blending etc... will be reflected too as long as the draw event is empty.It even describes exactly your example in the "Custom draw" part.
the custom draw, which is when you place code or actions in the draw event. This is telling GameMaker: Studio "I want to control what you draw for instances of this object" and it completely over-rides the default draw. This means that you can have an object with a sprite assigned, then set the draw event to draw text and the sprite will not be drawn as you have not told GameMaker: Studio to draw it.
Blank screen, so does DX11. :DWe already determined that blank screen is all you will ever get in DX11. It just doesn't have any code associated with drawing. It cannot load textures, it cannot draw sprites. So you just hallucinated previously. So testing with DX11 is not required as you will not ever see anything until it's properly finished (which can be in a time frame from "a month" to "never").
Yes, you need to draw the sprite when using the draw event. This has been true since the very beginning of GM (I guess version 1.0) and is clearly documented.
So you just hallucinated previously. So testing with DX11 is not required as you will not ever see anything until it's properly finished (which can be in a time frame from "a month" to "never").
No look closely the m is fucking up for me, where as the number 1 is fucking up for you. Which is wierd, but it's doing it in D3D9 for both of us.
Anyway, draw_self is documented.
http://enigma-dev.org/docs/Wiki/Draw_self
For some reason it is listed on the Sprite Functions page.
http://enigma-dev.org/docs/Wiki/Sprite_Functions