Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Content Pipleine Xamarin Studio Addin #1937

Merged
merged 55 commits into from Sep 29, 2013
Merged

Conversation

dellis1972
Copy link
Contributor

This PR includes

  1. An Addin for Windows and Mac for Xamarin Studio to compile the following content
    a) Textures - DXT and PVRTC compression support
    b) SpriteFonts - Can use system fonts like XNA does, BUT you can also put the font file in the same directory as the .spritefont and it will pick that file up.

It also has some changes to support Audio processing on Mac and a fix for NAudio on Windows when producing .mp4 files. The Audio processing seems to be working ok on Mac and can convert a .wav to an .mp4, and a .wav to an .xnb which can then be used.

This has been tested on Mac and Windows.

@mgbot
Copy link
Member

mgbot commented Aug 14, 2013

Test PASSed.
Refer to this link for build results: http://build.monogame.net/job/PullRequestTester/337/

Pipeline - Add new Font Glyph classes for Font Processing
@mgbot
Copy link
Member

mgbot commented Aug 19, 2013

Test FAILed.
Refer to this link for build results: http://build.monogame.net/job/PullRequestTester/341/

@mgbot
Copy link
Member

mgbot commented Aug 20, 2013

Test PASSed.
Refer to this link for build results: http://build.monogame.net/job/PullRequestTester/344/

@dellis1972
Copy link
Contributor Author

Almost ready people :D

@kjpou1
Copy link
Contributor

kjpou1 commented Aug 21, 2013

Sorry Dean. Let me clean up some things in there as it totally slipped by me. I should get to it today.

@mgbot
Copy link
Member

mgbot commented Aug 21, 2013

Test PASSed.
Refer to this link for build results: http://build.monogame.net/job/PullRequestTester/346/

@mgbot
Copy link
Member

mgbot commented Aug 29, 2013

Test FAILed.
Refer to this link for build results: http://build.monogame.net/job/PullRequestTester/357/

@mgbot
Copy link
Member

mgbot commented Sep 20, 2013

Test PASSed.
Refer to this link for build results: http://build.monogame.net/job/PullRequestTester/418/

@mgbot
Copy link
Member

mgbot commented Sep 23, 2013

Test PASSed.
Refer to this link for build results: http://build.monogame.net/job/PullRequestTester/424/

@mgbot
Copy link
Member

mgbot commented Sep 25, 2013

Test PASSed.
Refer to this link for build results: http://build.monogame.net/job/PullRequestTester/431/

@tomspilman
Copy link
Member

We need to get this merged.

The currently committed changes to the FontDescriptionProcessor broke font processing on Windows from the original GDI implementation. This PR seems like it may address all this.

if (File.Exists(Path.Combine(directory,fontName+".ttf"))) fontName += ".ttf";
if (File.Exists(Path.Combine(directory,fontName+".ttc"))) fontName += ".ttc";
if (File.Exists(Path.Combine(directory,fontName+".otf"))) fontName += ".otf";
var directories = new string[] { directory,
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This will need to eventually be fixed.

The FontName in a FontDescription is not necessarily the filename of a TTF font. Resolving the font name to a font file is a more complex process.

We can deal with that AFTER this is merged.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@tomspilman the problem is FreeType NEEDS the font file name, it can't use the Fontname (unlike the .net Font class). This is a change that we'll need to live with I think.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It can be done. The Nuclex font processor supports both font name and font filename.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Use the registry key HKLM\Software\Microsoft\Windows NT\CurrentVersion\Fonts to iterate installed fonts on Windows. That is how the Nuclex font processor does it. For reference
https://devel.nuclex.org/framework/svn/graphics/fonts/Nuclex.Fonts.Content.TrueTypeImporter/trunk/Source/FreeTypeManager.cpp

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I added code to lookup in the registry based on the fontName. This is only applied to windows though, so it means if you use a FontName in your spritefont on a Mac the chances are it wont work, unless the Font Filename matches the FontName+.ttf etc. However the improvement is if you use the Font filename, you can just drop the font in the same directory as the .spritefont file and it will pick it up without having to install it.

@mgbot
Copy link
Member

mgbot commented Sep 27, 2013

Test PASSed.
Refer to this link for build results: http://build.monogame.net/job/PullRequestTester/434/

@mgbot
Copy link
Member

mgbot commented Sep 27, 2013

Test PASSed.
Refer to this link for build results: http://build.monogame.net/job/PullRequestTester/436/

@mgbot
Copy link
Member

mgbot commented Sep 28, 2013

Test FAILed.
Refer to this link for build results: http://build.monogame.net/job/PullRequestTester/439/

@mgbot
Copy link
Member

mgbot commented Sep 28, 2013

Test PASSed.
Refer to this link for build results: http://build.monogame.net/job/PullRequestTester/440/

@mgbot
Copy link
Member

mgbot commented Sep 28, 2013

Test PASSed.
Refer to this link for build results: http://build.monogame.net/job/PullRequestTester/441/

@mgbot
Copy link
Member

mgbot commented Sep 29, 2013

Test PASSed.
Refer to this link for build results: http://build.monogame.net/job/PullRequestTester/445/

CartBlanche added a commit that referenced this pull request Sep 29, 2013
Massive Thanks for this : Content Pipleine Xamarin Studio Addin
@CartBlanche CartBlanche merged commit 7caa3f0 into MonoGame:develop Sep 29, 2013
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants