Commit Graph

60 Commits

Author SHA1 Message Date
Rubén Tomás Gracia 6295c8dc36 Fixed ContentReaderExtensions (#575)
Fixes #573
2018-12-28 18:21:30 +10:00
Dylan Wilson e962cec448 A mix between Tiled and GUI stuff (#553)
* mostly restored the tiled importer unit tests

* code cleanup

* code cleanup

* almost got tiled maps serialization independent of the content pipeline

* refactored the tiled map content importer so that tiled maps can be loaded at runtime

* code cleanup

* removed nuspec files

* experimenting with an XML based GUI markup parser

* a few more markup parser features

* finally got a working open file dialog

* experimenting with markup bindings

* attached properties

* working on the gui stuff again

* working on a better textbox

* multiline textboxing

* new text box is really coming along

* removed the content explorer experiment

* restored the old gui demo back to the way it was before (for now)
2018-10-09 22:18:48 +10:00
Dylan Wilson 59e28cb2f3 updated nuget packages 2018-08-06 20:26:09 +10:00
Dylan Wilson 25bc9addee cleaned up renaming bitvector32 code 2018-07-12 20:40:17 +10:00
Dylan Wilson 6e11f4a7d9 merged develop and fixed the very broken demos 2018-07-04 21:50:01 +10:00
Dylan Wilson cd42ba1923 Merge branch 'develop' into badguys 2018-07-01 20:43:41 +10:00
Dylan Wilson 547799d93c it's pretty darn close to fast 2018-06-22 22:59:52 +10:00
Dylan Wilson 6e73a59055 some code cleanup and documentation 2018-06-20 22:02:28 +10:00
stefanrbk eabd275a24 Merge branch 'develop' into Content 2018-06-19 17:27:48 -05:00
Dylan Wilson 89dbb71a1a removed the old ecs and refactored the platformer demo to use the new ecs 2018-06-19 21:24:56 +10:00
Jon Seaman 0482f3ef20 Fix circlef contains (#515)
* Fix CircleF.Contains

* Added test for CircleF.Contains point
2018-06-18 20:33:13 +10:00
Jon Seaman 862b64ac7b Rectangles now collide with circles (#513)
* Added CircleF and RectangleF intersection method

* Simplified shape implementation

* Docs

* Collision system uses shapes

* QuadTree collision allows circles

* ICollisionActor remove setter

+semver: patch

* Added position to IShapeF

+semver: patch

* Added CollisionComponent contains

* Fix penetration vector between circles

* Circle Rectangle penetration vector

* Added test for Rectangle Rectangle Collision

* Add docs, fix test
2018-06-14 21:27:37 +10:00
Dylan Wilson e46c61609b removed incomplete test 2018-06-13 23:04:38 +10:00
Dylan Wilson 9b2d3670e5 almost finished this beast 2018-06-13 23:03:22 +10:00
Dylan Wilson ffb0d1353b just some clean up and prep tonight 2018-06-11 22:38:35 +10:00
Dylan Wilson a9ec00a21f implemented aspect filtering builder 2018-06-10 23:49:35 +10:00
Dylan Wilson ed508d8b8c making progress on the new ecs framework 2018-06-09 23:09:06 +10:00
Dylan Wilson d86f767cce rewriting ecs from scratch 2018-06-09 00:02:07 +10:00
stefanrbk 92dc951099 Object Templates
Added handling of `TiledMapObject` templates. Tile object templates are currently not working as the tileset info is currently ignored.
2018-06-07 15:17:15 -05:00
Jon Seaman ce9fc2459b QuadTree Collision Library (#504)
* Created unit test project for collisions.

* Started on tests

* Created unit test project for collisions.

* Started on tests

* Update collision test

* CollisionInfo docs

* More docs for CollisionGrid and Cell

* Fix obsolete warning for RectangleF.Intersect

* Summary for CollisionGrid and CollisionGridCell

* QuadTree collision implemented

 - Ported from C++ from Game Physics Cookbook chapter 6, 2D Optimizations

* Small refactor for QuadTree naming

* First tests for QuadTree

* Fix test

* COde Cleanup

* Added DefaultMaxObjectsPerNode

* Add missed Query code

* Insert Tests and bugfix

* Fix bug with QuadTree.Shake

* Fix namespaces

* Query tests and fix

* Additional test for Query

* Initial QuadTreeCollision Component

* Basic collision demo working

* Spikey ball colliding with walls

* Improved the collision demo

* Update QuadTree

* Added comment for CollisionComponent

* Ignore test that needs fixed

* Rename QuadTree to Quadtree

* Fix penetration vector

* Update to 2.0 and xUnit
2018-05-30 20:26:34 +10:00
Dylan Wilson be01f42f4c unfortunately, unit tests don't work on the build machine 2018-05-28 21:45:52 +10:00
Dylan Wilson b3bc4aefc5 restored texture atlas unit tests 2018-05-28 21:24:25 +10:00
Dylan Wilson b4860bd4bb converted all of the unit tests to xunit 2018-05-12 21:05:02 +10:00
Dylan Wilson bcd9171317 slowly converting tests to xunit 2018-05-11 22:34:19 +10:00
Dylan Wilson 2cf9ec7350 partially restored the cake build 2018-05-10 21:33:43 +10:00
Dylan Wilson 0121a2b9c5 dotnet standard 2.0 baby! 2018-05-09 21:58:40 +10:00
Dylan Wilson a9abeff97e renamed segment 2018-04-03 22:07:52 +10:00
Dylan Wilson 929df39153 fixed broken ecs unit tests 2018-02-07 22:30:09 +10:00
Dylan Wilson 4126e68fb3 merge commit 2018-02-07 22:20:05 +10:00
Dylan Wilson 3d49ea6c93 got rid of most of the compile errors (except the content pipeline stuff 2018-01-30 23:55:16 +10:00
Jon Seaman eb5fd93e9f Feature label styling (#454)
* Added some basic tests for the ECS

* Add test project for Nuclex Gui

* Nuclex Gui project update

* Added ability to style labels

* Removed Nuclex Gui Test project for lack of tests
2018-01-10 13:36:20 +10:00
tspayne87 61614b5ffa [GUI] Binding Context / Control Style Fixes (#443)
* Adding in changes to deal with custom control types for loading from a GuiScreen, also adding in block text if a width for the element exists.  Adding in Padding to some elements to give the developer some more options in styles.  Adding in some changes to the textbox to deal with selecting a section of text.

* Adding in a few changes to deal with propagation down the GuiControl tree, this was added to most events.  Also, adding in the idea of a form and submit button to deal with keyboard controls when inside of a form.  This gives simalar behavier to how forms work in the browser.

* Adding in the enter key skip for the textbox.

* Fixing issue where GuiSystem would call initialize twice

* Adding in a fix for Issue #428, by leveraging the propegation system to deal with hover styles.

* Adding in some changes to seperate the global binding context and have it isolated in the screen.  Also adding in code to deal with a global style binding as well.
2017-12-17 21:36:10 +10:00
tspayne87 97d237f11f [GUI] Propegation changed also adding in fix for Issue #428 (#441)
* Adding in changes to deal with custom control types for loading from a GuiScreen, also adding in block text if a width for the element exists.  Adding in Padding to some elements to give the developer some more options in styles.  Adding in some changes to the textbox to deal with selecting a section of text.

* Adding in a few changes to deal with propagation down the GuiControl tree, this was added to most events.  Also, adding in the idea of a form and submit button to deal with keyboard controls when inside of a form.  This gives simalar behavier to how forms work in the browser.

* Adding in the enter key skip for the textbox.

* Fixing issue where GuiSystem would call initialize twice

* Adding in a fix for Issue #428, by leveraging the propegation system to deal with hover styles.
2017-11-26 20:48:57 +10:00
Dylan Wilson 17c7d8ccd7 demos are at least compiling again 2017-11-21 20:57:32 +10:00
tspayne87 46f3f99b39 [GUI] Adding support for parent propegation, the idea of forms and textbox highlighting (#439)
* Adding in changes to deal with custom control types for loading from a GuiScreen, also adding in block text if a width for the element exists.  Adding in Padding to some elements to give the developer some more options in styles.  Adding in some changes to the textbox to deal with selecting a section of text.

* Adding in a few changes to deal with propagation down the GuiControl tree, this was added to most events.  Also, adding in the idea of a form and submit button to deal with keyboard controls when inside of a form.  This gives simalar behavier to how forms work in the browser.

* Adding in the enter key skip for the textbox.
2017-11-21 10:50:24 +10:00
Rafael Almeida 5a7f012bff Added support for icons on buttons (#438) 2017-11-21 10:14:40 +10:00
Dylan Wilson 6f18b4291e fixed some broken unit tests 2017-09-01 20:39:13 +10:00
Greg Moller d6310e708c Change FromRgb method to create the Hue value correctly (a number between 0 and 360) (#417) 2017-08-31 20:40:17 +10:00
Dylan Wilson e6d5e9de70 fixed broken demos 2017-07-23 10:26:19 +10:00
Dylan Wilson b3a631aff5 Gui dialogs (#410)
* started refactoring for gui windows

* a bit more work on gui windows

* fixed some bugs and broken build stuff

* fixed some bugs in gui controls

* a little code cleanup

* got gui dialogs positioning and experimenting with named styles by type

* apply control styles directly in the constructor of controls

* got everything compiling again

* all gui controls have skinnable constructors

* rework uniform grid desired size calculations

* turns out gui layouts are complicated

* include pdb files in nuget packages

* fixed a bug in find nearest glyph

* custom control styling

* added a range constructor overload that takes one value

* rethinking control desired size behaviour

* made particle emitters more editable at runtime

* moved the auto trigger code to the particle effect instead of the emitters

* tweaks

* changed the particle modifer interface to an abstract base with an optional name

* changed the particle modifer interface to an abstract base with an optional name

* an attempt at creating a gui combo box

* rolled back the nested control experiment

* pretty good (but not perfect) combo boxes

* tweaks

* name property bindings on lists

* removed and cleaned up the hacks from the gui combo box

* minor combo box styling tweaks

* minor bug fix in gui combo box

* experiments with data binding

* fixed a mistake on the texture region service interface

* working on the ability to serialize particles

* finished particle serialization

* more robust range deserialization

* added editor browable attributes

* fixed some broken demos

* made the particle modifiers editable at runtime

* fixed some issues with particle serialization

* fixed some issues with interpolators
2017-07-22 21:22:13 +10:00
Dylan Wilson 9bcb00c964 stopped using obsolete methods 2017-05-25 20:04:41 +10:00
Robert Wallis 1ce72a4822 Tests moved MonoGame from Portable to WindowsDX, so they will run and p pass inside Visual Studio (#399) 2017-05-25 19:46:04 +10:00
Dylan Wilson 4eae631af2 fixed some bugs in gui text box 2017-05-23 20:42:09 +10:00
Dylan Wilson 9a29b0c1c3 default particle color is now white) 2017-05-10 21:30:16 +10:00
Dylan Wilson a77a346b14 changed particle emitter scale to use normalized values like everything else 2017-05-10 21:01:05 +10:00
Dylan Wilson 799b1edb06 Particles data driven (#388)
* yay, a start on data driven particles

* added data driven support for all particle profiles

* pretty much finished all of the particle serialization code

* resolved an inconsistency with the interpolators
2017-05-09 23:48:29 +10:00
Dylan Wilson 1788c25a3c added a sandbox hello world project for experimenting 2017-05-05 22:54:32 +10:00
Dylan Wilson 14bf2254d7 finally sorted out most of the gui layout issues 2017-04-28 23:01:10 +10:00
Dylan Wilson 6a163e2ea7 removed unused memcpy dll import in the particles package to fix #327 2017-04-06 22:11:31 +10:00
Lucas Girouard-Stranks 2725d02715 Artemis Entity Component System (#360)
* artemis ecs

* Working on StarWarrior

* Refactor for bugs

* demo works :)

* Fix pool bug

* Fix string typo

* ObjectPool garbage optimization

* Aspect attribute

* Remove BigInteger

* Fix demo

* Refactor for events

* wip on platformer demo

* Fix typo
2017-04-02 18:16:39 +10:00