28 Commits

Author SHA1 Message Date
Konstantin Koch
23466b9b31 some cleanup in BuildContentTask. Improved handling of ProcessorParameters. Made the BuildCache much more reliable. 2015-11-04 23:38:46 +01:00
Konstantin Koch
3cd7efbba4 Migrated StencilBuffer example and removed memory leaks for DX10 and DX11
Remove build message saying that a content file is still valid and will
be skipped.
Use OnApply for Effects, instead of an internal PreBindSetParameters.
Removed unnecessary dependencies from EffectParameterCollection and
EffectTechniqueCollection.
Moved Apply from INativeEffect to INativeEffectPass as Apply can only be
called on an EffectPass.
Added IDisposable to many Native object interfaces.
Added an InputLayoutManager so the InputLayouts don't get created on
every call.
Increased the amount of shared code for the GraphicsDevice between DX10
and DX11.
Simplified the amount of stuff the Draw calls do.
It's possible to use specific renderPasses when drawing and the drawing
methods of the GraphicsDevice don't draw all effectPasses of an effec
anymore.
Fixed the bug that a DynamicVertexBuffer created a staging buffer when
setting Elements for DX10 and DX11, which was unnecessary. Also it
didn't create a staging before for normal VertexBuffers which made it
not possible to set data there.
Implement EffectAnnotations for DX10.
Fixed SetRenderTargets for DX11.
2015-10-14 23:59:27 +02:00
Konstantin Koch
a8588a30a5 Update ContentCompiler, make Visual Studio Extension work without having Anx Framework installed.
Make ContentCompilerGui compatible to recent changes in pipeline and did
some usability changes.
Make the Visual Studio Extension work even if the ANX Framework is not
installed additionally..
Improve that the path for assembly refernces in a content project
doesn't get automatically updated, only if the reference is actually
saved, this is so you can specify a relative path yourself.
Fix missing icon for ContentProject when it was opened with Visual
Studio.
Made create_shaders.bat directly executable under windows by fixing the
directory separators.
2015-09-03 23:43:55 +02:00
Konstantin Koch
17d0771b03 Placed the importers into different categories for the "importing existing files" dialog in Visual Studio.
Fixed a performance problem in the Visual Studio extension where no importer or processor was selected for an asset.
Fixed that the asset names for Uri encoded in the build output.
Fixed that errors when serializing assets get logged.
Sped up ImporterManager.GuessImporterByFileExtension, which caused performance problems if many assemblies are loaded into the current AppDomain.
Made the AssimpImporter library deploy the binary files again (hopefully just a temporary solution until we've found a better way.)
Provide a extension for TargetPlatform enum for getting the DisplayName of an entry.
Changed that ProcessorManager.GetProcessorDisplayName doesn't throw an exception if no processor with the given name exists, which now mimicks the same behavior as in importerManager.GetImporterDisplayName.
2015-04-26 19:47:26 +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
SND\eagleeyestudios_cp
c134042d56 Tweaked the assembly blacklisting for linux. Building stuff on linux does now work without crashing mono. 2015-03-15 01:13:25 +01:00
SND\eagleeyestudios_cp
34b7bddbef Added a special assembly case handling for mono on linux as crawling some assemblies
apparently crashes mono :(
2015-03-15 01:13:24 +01:00
SND\eagleeyestudios_cp
2d0a7b3fe0 Content Pipeline:
- Added default value for target platform when reading cproj files

Compiler GUI:
- fixed issue #1143, a message box should now be displayed if project path is wrong
- added default case for empty configuration when loading projects
2015-03-15 01:12:49 +01:00
SND\eagleeyestudios_cp
412e4885c9 Improved Project Converter UI 2015-03-15 01:12:16 +01: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
9817ecf2e5 - fixed a minor bug in ANX content project loader
- added support to translate XNA content project files to ANX content project format and vice versa (still some work needed)
2015-03-15 01:11:56 +01:00
SND\eagleeyestudios_cp
9d997dd43d Content Pipeline:
- Added BuildModeConverter to make Debug/Release mode selectable in PropertyGrids
- Added ConverterAttribute to ContentProject
2015-03-15 01:11:50 +01:00
SND\eagleeyestudios_cp
0417857fd9 - Added missing developer attributes in previously add classes 2015-03-15 01:11:31 +01:00
SND\eagleeyestudios_cp
0406947b56 Content Pipeline:
- Added AvailableImporters property to ImporterManager
- Choosing importers via dropdown list in a propertyGrid is now possible.
2015-03-15 01:11:30 +01:00
SND\eagleeyestudios_cp
3f6dd9b9d0 Content Pipeline:
- Added ImporterConverter and ProcessorConverter to enable nice dropdown list for Importer/Processor in PropertyGrids

Content Compiler:
- Enabled choosing of Processors using a neat little dropdown list in the propertyGrid.
2015-03-15 01:11:30 +01:00
Glatzemann
4c4b999b9c - default ContentProcessor for ContentImporter now working
- some improvements in TextureImporter
- some improvements in SpriteTextureProcessor

Missing for basic texture handling: Texture2DContentWriter
2015-03-15 01:11:12 +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
Glatzemann
10aea90e56 - optimized ContentProject enumeration loading
- extended ContentBuilder tool to support ContentProjects
2015-03-15 01:10:53 +01:00
SND\eagleeyestudios_cp
9b842c7fd8 Content Compiler:
- Fixed some resource issues
- Implemented RecentProjects Feature
- Implemented build process
- Added a Logger implementation for BuildContent Class
- Added a displayable log to the MainWindow UI
- Fixed a bug that occured when adding files to the content root
- Trying to open a not existing project no longer throws an exception

ContentPipeline:
- Added missing property "Profile" to ContentProject
2012-09-09 15:44:49 +00:00
SND\eagleeyestudios_cp
4e875e2115 Content Pipeline:
- Fixed wrong XML parsing in ContentProject at read time

Content Compiler:
- Implemented the ability to add files to a project.
- Implemented showing and renaming properties of BuildItems and ContentProjects
- NewProjectScreen now checks if the project already exists
- Added some TreeViewExtensions
2012-09-01 16:30:35 +00:00
SND\eagleeyestudios_cp
6105dd9c02 Content Pipeline:
- Finished implementation of ContentProject (needs detailed testing though, not tested yet: saving/loading BuildItems, Saving loading References)

Content Compiler:
- Implemented opening of saved projects
2012-08-30 22:02:16 +00:00
SND\eagleeyestudios_cp
a85b5e51ee Content Pipeline:
- added ContentProject to Tasks namespace
- implemented Saving of the ContentProject (Loading is still missing)
Content Compiler:
- Basic creation/saving of an empty project without any files to XML works
- added Save and SaveAs implementations
2012-08-29 19:02:13 +00:00
SND\AstrorEnales_cp
67c9efa6cf - Moved the Wave loading/conversion to an extra project (WaveUtils)
- Started implementation of the Wave Content Pipeline
- Fixed GraphicsDeviceWindowsGL3
2012-08-29 18:07:54 +00:00
Glatzemann
64ac2da9dd Started to implement texture part of the ContentPipeline. 2012-08-27 09:12:20 +00:00
Glatzemann
016694c770 added custom parameters to ContentPipeline BuildItem 2012-08-27 05:33:46 +00:00
Glatzemann
3764074514 - some cosmetics on XNBValidator tool
- more work on our own ContentPipeline implementation: effect files are now imported, processed (compiled using fxc.exe) and serialized to a .xnb file. Needs testing...
2012-08-22 10:34:39 +00:00
Glatzemann
d64036a520 added rudimentary ContentProcessor support to ContentBuilder tool 2012-08-21 12:10:40 +00:00
Glatzemann
4234155c8c Added first version of ContentBuilder. It is NOT PRODUCTION READY currently.
This is will be the CLI-version of the ContentPipeline replacement of ANX. It is able to use ContentImporters to import assets.
2012-08-21 08:17:17 +00:00