78 Commits

Author SHA1 Message Date
Konstantin Koch
32b43c2a82 Added INativeGraphicsAdapter 2015-10-24 19:26:27 +02:00
Konstantin Koch
8287c54432 Included the Visual Studio extension and made the necessary changes to make it run.
Replaced the old VS templates with ones that offer more flexiblity.
Started replacing the Content Project for the samples with our custom project type.
Inlcuded a basic not yet working AssimpImporter.
2015-04-08 14:50:03 +02:00
Konstantin Koch
f081f8632a two commits were missing, both by KorsarNek:
"Removed the SupportedPlatformsImpl classes and replaced them with a new SupportedPlatforms attribute on the assembly level.
Removed a few class constructors which could cause problems when loading a game.
Made ResetElapsedTime in the game class reset to 0 instead of TimeSpan.MinValue.
Removed the restriction in the InputDeviceFactory for which InputDevices are supported.
Added a Logger for Metro which works with the current Logger implementation.
Changed that when a platform is recognized that is higher than Windows 8, it gets treated like Windows 8, not like Windows 7.
Due to the SupportedPlatforms change, the assembly loader is now faster in finding out which assemblies contains addIns. For not Metro system, it's also added that a warning gets written if an AddIn references a different ANX version than that of the running assembly.
OpenGL and DirectX have been updated to the newest versions.
XAudio system uses now the same SharpDX version as all the other systems.
ParameterBuffer for WindowsMetro gets now correctly created by considering the size constraints for constant buffers.
Fixed an erroneous finalizer in the xaudio system.
Made the metro projects convert to Windows 8.1, as Windows 8.0 is not supported by the newer SharpDX versions. It's now also necessary to use at least Visual Studio 2013 to build the Metro versions.
Made the samples work again on Windows."

"Fixed the creation of the swap chain for windows metro and removed the dependency of the Metro Rendersystem onto the Metro Platformsytem.
All occurrences of WindowHandles have been replaced with a custom WindowHandle type which should work out of the box in most cases, but does still represent a breaking change to XNA.
The ProjectConverter for Metro was adjusted so that with just changing the way the application is initialized, most projects that worked with ANX before should now work under win rt. The sample SimpleNoContent does now work out of the box for win rt, after a project conversion.
The application name for win rt apps is now a guid, the display name stayed the same though. That's to be more compliant with the way win rt apps are normally created.
The default namespace and namespace of the classes for the Sample "SimpleNoContent" is renamed from "SimpleModernUI" to "SimpleNoContent".
With the new way win rt apps are initialized for ANX, it's necessary to first create the WindowsGameHost for WinRT with a handler how to create the game instance and give that to the CoreApplication object to run it.
Also took care of a few annoying bugs when working with win rt and ANX where no InputDevices could be created on the first frame (Issue #1164 ) and that it wasn't possible to use the localfolder of the application on the first update and all the other stuff for which an instance of the Application class was necessary."
2015-03-29 13:48:33 +02:00
Glatzemann
99216ca254 - Fixed some bugs in build system
- Build system optimizations
- Extended ProjectConverter: DX and SharpDX assemblies are now removed from linux projects to prevent errors
- Fixed a bunch of compiler warnings
- Removed DX11MetroShaderGenerator assembly. It is now included in ANX.Framework.Content.Pipeline
- Removed HLSLParser assembly. It is now included in ANX.Framework.Content.Pipeline.
- Removed shader parser from GL3-RenderSystem. It is now included in ANX.Framework.Content.Pipeline.
- Removed RenderSystem dependencies from StockShaderCodeGenerator (sscg) tool
2015-03-15 01:12:04 +01:00
Glatzemann
fa32fcea55 added some tests
added some developer attributes
completed some more classes
2015-03-15 01:11:47 +01:00
SND\AstrorEnales_cp
73b50ab6c3 - Translated the AlphaTest shader to GLSL (needs some more testing)
- Added a bunch of Development attributes
- Fixed a class file name that was different from the class name itself
2015-03-15 01:11:46 +01:00
SND\AstrorEnales_cp
0b9acc40ee Finished the ANX.Framework side of EffectAnnotation, EffectParameter and EffectTechnique 2015-03-15 01:11:40 +01:00
SND\AstrorEnales_cp
0d25ca7589 - Added OggUtils Support project by making use of the csogg and csvorbis projects
- Implemented native Song playback in OpenAL and XAudio2
- Some tweaks in the MediaPlayer and MediaQueue
- Added a testmusic.ogg file to the media folder
2015-03-15 01:11:27 +01:00
SND\AstrorEnales_cp
d4cce42aa8 Implemented the Framework side of DynamicSoundEffectInstance (still needs native implementation) 2015-03-15 01:11:18 +01:00
SND\AstrorEnales_cp
ef734ddcd3 Implemented the MediaPlayer and MediaQueue classes as preparation for native Song playback.
Also added the FrameworkDispatcher calls in the Game class.
Checking for possible fire and forget sound instances to be disposed in the FrameworkDispatcher update chain.
2015-03-15 01:11:17 +01:00
Glatzemann
933ef7cae6 - extended ContentPipeline ProcessorManager with method to select a default processor for a importer or imported type
- extended ContentImporter to provide OutputType of imported content
- provided a list of available ContentProcessors in current context

PlatformSystems are no longer AddIns. This doesn't mean, that you can't load them dynamically. The handling is just different. There's only a single PlatformSystem available for each platform ANX runs on. This one is auto loaded. If it doesn't exist the game doesn't run. The reason for this is, that we will move the AddIn system from ANX.Framework to the specialized PlatformSystem. This is necessary because we want ANX.Framework to become platform independent. The AddIn system is different for some platforms (Android, iOS, Windows 8 Metro) and needs to be specialized. On the other hand we are able to simplify the AddIn system when moving it to the PlatformSystem because we don't need a big AddIn system supporting all platforms with much conditional compiling.

THIS COMMIT DOES BREAK SOME FUNCTIONALITY. METRO DOESN'T WORK ANYMORE, AS IT IS NOT TESTED. DON'T USE THIS COMMIT IF YOU ARE NO ANX.FRAMEWORK DEVELOPER. We will catch up soon with a tested and working version.
2015-03-15 01:10:54 +01:00
SND\AstrorEnales_cp
3316d46dba - Implemented some GetData methods in the Vertex and Index Buffer implementations
- Added developer, PercentageComplete and TestState attributes
- Added Event to the FrameworkDispatcher which will be used by the components that need it (audio etc.)
- Some more refactorings, regions, etc.
2012-09-04 21:36:46 +00:00
SND\AstrorEnales_cp
28f3010330 Added IOcclusionQuery interface and implemented the base OcclusionQuery class and the GL3 implementation. 2012-09-03 21:54:12 +00:00
SND\AstrorEnales_cp
845d8ec716 - Further implemented the Dispose chain which now prevents the OpenGL gd from leaking (still some work required)
- Logging OpenGL version on Device Reset with GL3 RenderSystem
2012-08-30 12:05:40 +00:00
Glatzemann
1f45cd9038 - added Developer-Attribute for tagging classes responsibility
- added a bunch of Completion- and Developer-Tags
2012-08-29 13:14:00 +00:00
SND\AstrorEnales_cp
1a429e25d5 Added AudioSample and testsound.wav as a testcase for SoundEffect and SoundEffectInstance which now work with the OpenAL SoundSystem. 2012-08-29 13:04:22 +00:00
Glatzemann
de0232177e XNAEXT: added a ConstantBuffer class and interfaces to the RenderSystem. Everything compiles fine but the RenderSystem does not create unmanaged buffers because it needs to be implemented. 2012-08-29 10:48:21 +00:00
Glatzemann
7eb3e5241e - prepared ContentPipeline to load EffectFiles for the different TargetProfile's. Currently HLSL_FX is working fine and GLSL_FX is prepared (needs testing).
- ContentPipeline effects now have a EffectSourceLanguage parameter
2012-08-27 18:42:54 +00:00
SND\AstrorEnales_cp
c955ca882a Implemented Xact general settings parsing for the AudioEngine 2012-08-26 20:17:41 +00:00
SND\AstrorEnales_cp
9164b2297e Removed the MediaSystem cause it isn't needed any more. Any stuff that was planned to go in there, will now be in the other systems 2012-08-25 21:22:30 +00:00
SND\AstrorEnales_cp
734679616b - Added ILRepack
- Refactored the AddIn-System to allow merged assemblies (for metro, android, etc. later on)
- Added empty PsVita Sound and Media System modules
- Fixed 2 small missing excludes in the build script
- Cleaned the License headers in the shader files
- Some other refactorings
2012-08-25 17:27:45 +00:00
SND\AstrorEnales_cp
e66216d524 - Added IMicrophone native interface and implemented the Microphone class 2012-08-22 14:28:22 +00:00
SND\AstrorEnales_cp
9200286a83 - Implemented TouchPanel classes and added native TouchPanel interface
- Started PsVita Input project and implemented Touch and GamePad so far
- Added OpenALAudioListener
2012-08-22 09:51:35 +00:00
SND\AstrorEnales_cp
96d6ad095e - Fixed a small issue in variable parsing with Textures
- Removed the sharpdx references from the Metro shader generator
- Added a basic path searching to the metro shader generator to find the correct path to the fxc tool
2012-08-17 14:25:59 +00:00
SND\AstrorEnales_cp
d17743ef3a - Some smaller Refactorings in Metro systems
- Added a bunch of Basic TypeWriters to the ContentPipeline
2012-08-14 13:07:24 +00:00
SND\AstrorEnales_cp
9cfc4d256d - Started working on AssemblyNameFile to make the Factory work on all systems
- Started PsVita RenderSystem and PlatformSystem (still much todo)
2012-08-11 13:06:29 +00:00
SND\AstrorEnales_cp
d05594fce8 Completely removed the Metadata.resx files which didn't work on Metro, added a new approach with an Interface and derived classes in the modules, which is basically the same approach. 2012-08-09 16:33:47 +00:00
SND\AstrorEnales_cp
5505f7dcbf - Added PlatformSystem Plugins layer
- Started Windows, Metro and Linux Platform-Plugins
- Moved the RecordingSample to the Samples folder
- Started two samples for using the graphics device in a WinForms and Wpf Editor
- Refactorings in the AddIn-System
- Moved the Window initialization-code to the Platform modules
- Changed the License text in all code files which is now way smaller
- Started ProjectConverter tool which converts all the projects and solution to the target configuration
- Changed the SupportedPlatform names in the Resource files
- Changed the WIN8 define to WINDOWSMETRO which is actually meant
- Removed NLog and started our own Logger class
- Many more stuff...
2012-08-09 09:45:04 +00:00
Glatzemann
5ce38121d4 some work on building ANX.Framework for Windows8 / Metro Style 2012-03-26 08:27:29 +00:00
Glatzemann
7b1c3d402c - added the RenderSystem.Windows.Metro with a bunch of new files (NOT WORKING currently)
- changed many things in ANX.Framework core assembly to make it compile using VS2011 and .NET 4.5 for Win8 (not finished yet)
2012-02-21 07:52:20 +00:00
Glatzemann
a2dda0ffa2 Some more work on build script for Windows 8 (Metro style). Win8-Build now uses tuned project files and new build system. There's a bunch of errors when building for Win8 now. This is ok for now because it is a sign that it is moving in the right direction. Now everything not supported by WinRT needs to be replaced for solving these errors. 2012-02-20 13:59:52 +00:00
SND\AstrorEnales_cp
7546ff78d0 - Added INativeIndexBuffer and INativeVertexBuffer
- All methods in Vertex and IndexBuffer now call the native methods
- Nearly all methods in Texture2D now call the native methods
2012-02-19 13:41:02 +00:00
SND\AstrorEnales_cp
772d4be8d3 - OpenGL render system now keeps track of all it's resources and Disposes and Recreates them if needed
- OpenGL Device is now Reset correctly when for example the window size changes (Recreating all resources)
- OpenGL render system doesn't crash anymore when closing the application
- Introduced TestStateAttribute for development to mark a file as tested/untested
2012-02-18 22:43:08 +00:00
SND\AstrorEnales_cp
1cebf6f91e - Introduced new MediaSystem creator (handling the whole Media namespace)
- Made the plugin handling internally way simpler (no tons of duplicated code anymore)
- Added empty MediaSystem to have a default for now (Windows.OpenAL)
- Added a PercentageCompleteAttribute which will be used to mark the current state of a class (0-100%)
2012-02-15 19:48:46 +00:00
SND\AstrorEnales_cp
d8ab2ef4cc Further work on the sound system creator process 2012-02-11 23:53:03 +00:00
SND\AstrorEnales_cp
dd2353ec88 - Some refactorings in the GL render system
- Started working on SoundSystem creator and SoundEffects
2012-01-25 15:31:58 +00:00
Glatzemann
1a03ea2ad2 - Removed InputSystemCreators from ANX.InputDevices.OpenTK and ANX.InputDevices.Windows.Kinect as they don't host InputSystems anymore.
- Improved handling of GameWindow handle (needed for mouse and keyboard support)
- Improved exception handling while creating mouse and keyboard instances from InputDevice AddIns.
- Fixed some sample issues (and opened issues at codeplex for some remaining issues)
2011-12-15 09:19:40 +00:00
Glatzemann
3765f00151 - fixed a minor issue with pathes in MSI-Installer build script
- added creators for concrete InputDevice instances
- added a factory to manage InputDeviceCreators which are located in AddIn assemblies
- implemented some InputDeviceCreators in ANX.InputSystem.Windows.XInput as reference
- created the new InputSystem: ANX.InputSystem.Standard which is the default container for the new InputDevices. It is replaceable by the ANX.InputSystem.Recording e.g.
- added ANX.InputSystem.Standard to build script and MSI-Installer build script
- added ANX.InputSystem.Recording to the MSI-Installer build script
- implemented AvailableNetworkSessions (and fixed another wrong class reported by ANXStatusComparer)
- updated WindowsGame sample to support only one InputSystem at the time (replaced multi SelectBox with ComboBox)
- renamed ANX.InputSystem.Windows.XInput to ANX.InputDevices.Windows.XInput because it no longer contains a InputSystem but InputDevices

This version is UNSTABLE and not TESTED because of massive changes regarding the InputSystem !!!
2011-12-14 19:22:17 +00:00
Glatzemann
5eaba32696 fixed issue #524 ("Sprites are disappearing after some frames") 2011-12-12 08:50:49 +00:00
Glatzemann
8e69296c4d added basic GraphicsResource tracking
native objects of Effect, VertexBuffer, IndexBuffer, DynamicVertexBuffer and DynamicIndexBuffer are recreated now after destroying GraphicsDevice
2011-12-07 08:40:40 +00:00
Glatzemann
0e1d271195 refactored AddInSystem (testing needed)
implemented feature #469 (Default AddIn override)
2011-12-06 09:11:26 +00:00
Glatzemann
0d196c2f53 Started implementing RenderTargets for RenderSystem DX10. The target is creatable and usable but the Texture of the RenderTarget is currently empty. 2011-11-28 16:06:52 +00:00
Glatzemann
d8d88b141c added new target "create_packages" in build script
PreferredBackBufferWidth and PreferredBackBufferHeight are returning values now
added EffectPass handling
applying effects is not a workaround anymore
2011-11-22 14:51:30 +00:00
Glatzemann
f931832502 added NLog to lib folder for logging
added log configuration to ANX.Framework assembly
added debug logging to ANX.Inputsystem.Windows.XInput and ANX.Framework
2011-11-21 16:00:02 +00:00
Glatzemann
a7b1f1b663 Minor improvements to Exception handling of AddInSystem 2011-11-21 11:44:14 +00:00
Glatzemann
b1a3ad60f3 Reverted some changes made to ANX.Framework.csproj during revision 12357 which removed GamerServices namespace from project 2011-11-21 10:51:49 +00:00
SND\rene87_cp
9e40604119 update the TestCenter 2011-11-19 23:13:18 +00:00
SND\xToast_cp
806367f4ff -Implemented an Corrected Vector-Methods, just Transform by Quaternion missing
-Fixed Unittests
2011-11-19 18:52:31 +00:00
SND\AstrorEnales_cp
bbeb6be3d1 Added the whole bunch of missing classes as empty classes for now
We got zero missings now ;)
2011-11-17 20:35:25 +00:00
SND\AstrorEnales_cp
6f602c3597 Added all Net classes as dummy 2011-11-16 15:00:54 +00:00