add games
@@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f4f1998645f3e4c4e8ab737a40c99b74
|
@@ -0,0 +1,349 @@
|
||||
using UnityEngine;
|
||||
using UnityEditor;
|
||||
using System.Collections;
|
||||
using System.IO;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using ProBuilder2.Common;
|
||||
|
||||
namespace ProBuilder2.EditorCommon
|
||||
{
|
||||
/**
|
||||
* INSTRUCTIONS
|
||||
*
|
||||
* - Only modify properties in the USER SETTINGS region.
|
||||
* - All content is loaded from external files (pc_AboutEntry_YourProduct. Use the templates!
|
||||
*/
|
||||
|
||||
/**
|
||||
* Used to pop up the window on import.
|
||||
*/
|
||||
[InitializeOnLoad]
|
||||
static class pb_AboutWindowSetup
|
||||
{
|
||||
static pb_AboutWindowSetup()
|
||||
{
|
||||
EditorApplication.delayCall += () => { pb_AboutWindow.Init(false); };
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Changelog.txt file should follow this format:
|
||||
*
|
||||
* | # Product Name 2.1.0
|
||||
* |
|
||||
* | ## Features
|
||||
* |
|
||||
* | - All kinds of awesome stuff
|
||||
* | - New flux capacitor design achieves time travel at lower velocities.
|
||||
* | - Dark matter reactor recalibrated.
|
||||
* |
|
||||
* | ## Bug Fixes
|
||||
* |
|
||||
* | - No longer explodes when spacebar is pressed.
|
||||
* | - Fix rolling issue in rickmeter.
|
||||
* |
|
||||
* | # Changes
|
||||
* |
|
||||
* | - Changed Blue to Red.
|
||||
* | - Enter key now causes explosions.
|
||||
*
|
||||
* This path is relative to the PRODUCT_ROOT path.
|
||||
*
|
||||
* Note that your changelog may contain multiple entries. Only the top-most
|
||||
* entry will be displayed.
|
||||
*/
|
||||
public class pb_AboutWindow : EditorWindow
|
||||
{
|
||||
// Modify these constants to customize about screen.
|
||||
const string PACKAGE_NAME = "ProBuilder";
|
||||
|
||||
private static string aboutRoot = "Assets/ProCore/" + PACKAGE_NAME + "/About";
|
||||
|
||||
// Path to the root folder
|
||||
internal static string AboutRoot
|
||||
{
|
||||
get
|
||||
{
|
||||
if( Directory.Exists(aboutRoot) )
|
||||
{
|
||||
return aboutRoot;
|
||||
}
|
||||
else
|
||||
{
|
||||
aboutRoot = pb_FileUtil.FindFolder("ProBuilder/About");
|
||||
if(aboutRoot.EndsWith("/"))
|
||||
aboutRoot = aboutRoot.Remove(aboutRoot.LastIndexOf("/"), 1);
|
||||
return aboutRoot;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
GUIContent gc_Learn = new GUIContent("Learn ProBuilder", "Documentation");
|
||||
GUIContent gc_Forum = new GUIContent("Support Forum", "ProCore Support Forum");
|
||||
GUIContent gc_Contact = new GUIContent("Contact Us", "Send us an email!");
|
||||
GUIContent gc_Banner = new GUIContent("", "ProBuilder Quick-Start Video Tutorials");
|
||||
|
||||
private const string VIDEO_URL = @"http://bit.ly/pbstarter";
|
||||
private const string LEARN_URL = @"http://procore3d.com/docs/probuilder";
|
||||
private const string SUPPORT_URL = @"http://www.procore3d.com/forum/";
|
||||
private const string CONTACT_EMAIL = @"http://www.procore3d.com/about/";
|
||||
private const float BANNER_WIDTH = 480f;
|
||||
private const float BANNER_HEIGHT = 270f;
|
||||
|
||||
internal const string FONT_REGULAR = "Asap-Regular.otf";
|
||||
internal const string FONT_MEDIUM = "Asap-Medium.otf";
|
||||
|
||||
// Use less contast-y white and black font colors for better readabililty
|
||||
public static readonly Color font_white = HexToColor(0xCECECE);
|
||||
public static readonly Color font_black = HexToColor(0x545454);
|
||||
public static readonly Color font_blue_normal = HexToColor(0x00AAEF);
|
||||
public static readonly Color font_blue_hover = HexToColor(0x008BEF);
|
||||
|
||||
|
||||
private string productName = pb_Constant.PRODUCT_NAME;
|
||||
private pb_AboutEntry about = null;
|
||||
private string changelogRichText = "";
|
||||
|
||||
internal static GUIStyle bannerStyle,
|
||||
header1Style,
|
||||
versionInfoStyle,
|
||||
linkStyle,
|
||||
separatorStyle,
|
||||
changelogStyle,
|
||||
changelogTextStyle;
|
||||
|
||||
Vector2 scroll = Vector2.zero;
|
||||
|
||||
/**
|
||||
* Return true if Init took place, false if not.
|
||||
*/
|
||||
public static bool Init (bool fromMenu)
|
||||
{
|
||||
pb_AboutEntry about;
|
||||
|
||||
if(!pb_VersionUtil.GetAboutEntry(out about))
|
||||
{
|
||||
Debug.LogWarning("Couldn't find pb_AboutEntry_ProBuilder.txt");
|
||||
return false;
|
||||
}
|
||||
|
||||
if(fromMenu || pb_PreferencesInternal.GetString(about.identifier) != about.version)
|
||||
{
|
||||
pb_AboutWindow win;
|
||||
win = (pb_AboutWindow)EditorWindow.GetWindow(typeof(pb_AboutWindow), true, about.name, true);
|
||||
win.ShowUtility();
|
||||
win.SetAbout(about);
|
||||
pb_PreferencesInternal.SetString(about.identifier, about.version, pb_PreferenceLocation.Global);
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
private static Color HexToColor(uint x)
|
||||
{
|
||||
return new Color( ((x >> 16) & 0xFF) / 255f,
|
||||
((x >> 8) & 0xFF) / 255f,
|
||||
(x & 0xFF) / 255f,
|
||||
1f);
|
||||
}
|
||||
|
||||
public static void InitGuiStyles()
|
||||
{
|
||||
bannerStyle = new GUIStyle()
|
||||
{
|
||||
// RectOffset(left, right, top, bottom)
|
||||
margin = new RectOffset(12, 12, 12, 12),
|
||||
normal = new GUIStyleState() {
|
||||
background = LoadAssetAtPath<Texture2D>(string.Format("{0}/Images/Banner_Normal.png", AboutRoot))
|
||||
},
|
||||
hover = new GUIStyleState() {
|
||||
background = LoadAssetAtPath<Texture2D>(string.Format("{0}/Images/Banner_Hover.png", AboutRoot))
|
||||
},
|
||||
};
|
||||
|
||||
header1Style = new GUIStyle()
|
||||
{
|
||||
margin = new RectOffset(10, 10, 10, 10),
|
||||
alignment = TextAnchor.MiddleCenter,
|
||||
fontSize = 24,
|
||||
// fontStyle = FontStyle.Bold,
|
||||
font = LoadAssetAtPath<Font>(string.Format("{0}/Font/{1}", AboutRoot, FONT_MEDIUM)),
|
||||
normal = new GUIStyleState() { textColor = EditorGUIUtility.isProSkin ? font_white : font_black }
|
||||
};
|
||||
|
||||
versionInfoStyle = new GUIStyle()
|
||||
{
|
||||
margin = new RectOffset(10, 10, 10, 10),
|
||||
fontSize = 14,
|
||||
font = LoadAssetAtPath<Font>(string.Format("{0}/Font/{1}", AboutRoot, FONT_REGULAR)),
|
||||
normal = new GUIStyleState() { textColor = EditorGUIUtility.isProSkin ? font_white : font_black }
|
||||
};
|
||||
|
||||
linkStyle = new GUIStyle()
|
||||
{
|
||||
margin = new RectOffset(10, 10, 10, 10),
|
||||
alignment = TextAnchor.MiddleCenter,
|
||||
fontSize = 16,
|
||||
font = LoadAssetAtPath<Font>(string.Format("{0}/Font/{1}", AboutRoot, FONT_REGULAR)),
|
||||
normal = new GUIStyleState() {
|
||||
textColor = font_blue_normal,
|
||||
background = LoadAssetAtPath<Texture2D>(
|
||||
string.Format("{0}/Images/ScrollBackground_{1}.png",
|
||||
AboutRoot,
|
||||
EditorGUIUtility.isProSkin ? "Pro" : "Light"))
|
||||
},
|
||||
hover = new GUIStyleState() {
|
||||
textColor = font_blue_hover,
|
||||
background = LoadAssetAtPath<Texture2D>(
|
||||
string.Format("{0}/Images/ScrollBackground_{1}.png",
|
||||
AboutRoot,
|
||||
EditorGUIUtility.isProSkin ? "Pro" : "Light"))
|
||||
}
|
||||
};
|
||||
|
||||
separatorStyle = new GUIStyle()
|
||||
{
|
||||
margin = new RectOffset(10, 10, 10, 10),
|
||||
alignment = TextAnchor.MiddleCenter,
|
||||
fontSize = 16,
|
||||
font = LoadAssetAtPath<Font>(string.Format("{0}/Font/{1}", AboutRoot, FONT_REGULAR)),
|
||||
normal = new GUIStyleState() { textColor = EditorGUIUtility.isProSkin ? font_white : font_black }
|
||||
};
|
||||
|
||||
changelogStyle = new GUIStyle()
|
||||
{
|
||||
margin = new RectOffset(10, 10, 10, 10),
|
||||
font = LoadAssetAtPath<Font>(string.Format("{0}/Font/{1}", AboutRoot, FONT_REGULAR)),
|
||||
richText = true,
|
||||
normal = new GUIStyleState() { background = LoadAssetAtPath<Texture2D>(
|
||||
string.Format("{0}/Images/ScrollBackground_{1}.png",
|
||||
AboutRoot,
|
||||
EditorGUIUtility.isProSkin ? "Pro" : "Light"))
|
||||
}
|
||||
};
|
||||
|
||||
changelogTextStyle = new GUIStyle()
|
||||
{
|
||||
margin = new RectOffset(10, 10, 10, 10),
|
||||
font = LoadAssetAtPath<Font>(string.Format("{0}/Font/{1}", AboutRoot, FONT_REGULAR)),
|
||||
fontSize = 14,
|
||||
normal = new GUIStyleState() { textColor = EditorGUIUtility.isProSkin ? font_white : font_black },
|
||||
richText = true,
|
||||
wordWrap = true
|
||||
};
|
||||
}
|
||||
|
||||
public void OnEnable()
|
||||
{
|
||||
InitGuiStyles();
|
||||
|
||||
Texture2D banner = bannerStyle.normal.background;
|
||||
|
||||
if(banner == null)
|
||||
{
|
||||
Debug.LogWarning("Could not load About window resources");
|
||||
this.Close();
|
||||
}
|
||||
else
|
||||
{
|
||||
bannerStyle.fixedWidth = BANNER_WIDTH; // banner.width;
|
||||
bannerStyle.fixedHeight = BANNER_HEIGHT; // banner.height;
|
||||
|
||||
this.wantsMouseMove = true;
|
||||
|
||||
this.minSize = new Vector2(BANNER_WIDTH + 24, BANNER_HEIGHT * 2.5f);
|
||||
this.maxSize = new Vector2(BANNER_WIDTH + 24, BANNER_HEIGHT * 2.5f);
|
||||
|
||||
if(!productName.Contains("Basic"))
|
||||
productName = "ProBuilder Advanced";
|
||||
}
|
||||
}
|
||||
|
||||
void SetAbout(pb_AboutEntry about)
|
||||
{
|
||||
this.about = about;
|
||||
|
||||
if(!File.Exists(about.changelogPath))
|
||||
about.changelogPath = pb_FileUtil.FindFile("ProBuilder/About/changelog.txt");
|
||||
|
||||
if(File.Exists(about.changelogPath))
|
||||
{
|
||||
string raw = File.ReadAllText(about.changelogPath);
|
||||
|
||||
if(!string.IsNullOrEmpty(raw))
|
||||
{
|
||||
pb_VersionInfo vi;
|
||||
pb_VersionUtil.FormatChangelog(raw, out vi, out changelogRichText);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
internal static T LoadAssetAtPath<T>(string InPath) where T : UnityEngine.Object
|
||||
{
|
||||
return (T) AssetDatabase.LoadAssetAtPath(InPath, typeof(T));
|
||||
}
|
||||
|
||||
void OnGUI()
|
||||
{
|
||||
Vector2 mousePosition = Event.current.mousePosition;
|
||||
|
||||
if( GUILayout.Button(gc_Banner, bannerStyle) )
|
||||
Application.OpenURL(VIDEO_URL);
|
||||
|
||||
if(GUILayoutUtility.GetLastRect().Contains(mousePosition))
|
||||
Repaint();
|
||||
|
||||
GUILayout.BeginVertical(changelogStyle);
|
||||
|
||||
GUILayout.Label(productName, header1Style);
|
||||
|
||||
GUILayout.BeginHorizontal();
|
||||
GUILayout.FlexibleSpace();
|
||||
|
||||
if(GUILayout.Button(gc_Learn, linkStyle))
|
||||
Application.OpenURL(LEARN_URL);
|
||||
|
||||
GUILayout.Label("|", separatorStyle);
|
||||
|
||||
if(GUILayout.Button(gc_Forum, linkStyle))
|
||||
Application.OpenURL(SUPPORT_URL);
|
||||
|
||||
GUILayout.Label("|", separatorStyle);
|
||||
|
||||
if(GUILayout.Button(gc_Contact, linkStyle))
|
||||
Application.OpenURL(CONTACT_EMAIL);
|
||||
|
||||
GUILayout.FlexibleSpace();
|
||||
GUILayout.EndHorizontal();
|
||||
|
||||
if(GUILayoutUtility.GetLastRect().Contains(mousePosition))
|
||||
Repaint();
|
||||
|
||||
GUILayout.EndVertical();
|
||||
|
||||
// always bold the first line (cause it's the version info stuff)
|
||||
scroll = EditorGUILayout.BeginScrollView(scroll, changelogStyle);
|
||||
GUILayout.Label(string.Format("Version: {0}", about.version), versionInfoStyle);
|
||||
GUILayout.Label("\n" + changelogRichText, changelogTextStyle);
|
||||
EditorGUILayout.EndScrollView();
|
||||
}
|
||||
|
||||
/**
|
||||
* Draw a horizontal line across the screen and update the guilayout.
|
||||
*/
|
||||
void HorizontalLine()
|
||||
{
|
||||
Rect r = GUILayoutUtility.GetLastRect();
|
||||
Color og = GUI.backgroundColor;
|
||||
GUI.backgroundColor = Color.black;
|
||||
GUI.Box(new Rect(0f, r.y + r.height + 2, Screen.width, 2f), "");
|
||||
GUI.backgroundColor = og;
|
||||
|
||||
GUILayout.Space(6);
|
||||
}
|
||||
}
|
||||
}
|
@@ -0,0 +1,13 @@
|
||||
fileFormatVersion: 2
|
||||
guid: fca06bdb2c29e7344b757645530b0eff
|
||||
timeCreated: 1485893835
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences:
|
||||
- gravityFont: {fileID: 12800000, guid: 28ed1153d48f34485be1063881729e18, type: 3}
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@@ -0,0 +1,91 @@
|
||||
using UnityEngine;
|
||||
using UnityEditor;
|
||||
using ProBuilder2.Common;
|
||||
|
||||
namespace ProBuilder2.EditorCommon
|
||||
{
|
||||
class pb_UpdateAvailable : EditorWindow
|
||||
{
|
||||
public static void Init(pb_VersionInfo newVersion, string changelog)
|
||||
{
|
||||
pb_UpdateAvailable win = EditorWindow.GetWindow<pb_UpdateAvailable>(true, "ProBuilder Update Available", true);
|
||||
win.m_NewVersion = newVersion;
|
||||
win.m_NewChangelog = changelog;
|
||||
}
|
||||
|
||||
[SerializeField] pb_VersionInfo m_NewVersion;
|
||||
[SerializeField] string m_NewChangelog;
|
||||
Vector2 scroll = Vector2.zero;
|
||||
GUIContent gc_DownloadUpdate = new GUIContent("", "Open Asset Store Download Page");
|
||||
|
||||
private static GUIStyle downloadImageStyle = null,
|
||||
updateHeader = null;
|
||||
|
||||
private bool checkForProBuilderUpdates
|
||||
{
|
||||
get { return pb_PreferencesInternal.GetBool(pb_Constant.pbCheckForProBuilderUpdates, true); }
|
||||
set { pb_PreferencesInternal.SetBool(pb_Constant.pbCheckForProBuilderUpdates, value); }
|
||||
}
|
||||
|
||||
void OnEnable()
|
||||
{
|
||||
pb_AboutWindow.InitGuiStyles();
|
||||
|
||||
wantsMouseMove = true;
|
||||
minSize = new Vector2(400f, 350f);
|
||||
|
||||
downloadImageStyle = new GUIStyle()
|
||||
{
|
||||
margin = new RectOffset(10, 10, 10, 10),
|
||||
fixedWidth = 154,
|
||||
fixedHeight = 85,
|
||||
normal = new GUIStyleState() {
|
||||
background = pb_AboutWindow.LoadAssetAtPath<Texture2D>(string.Format("{0}/Images/DownloadPB_Normal.png", pb_AboutWindow.AboutRoot))
|
||||
},
|
||||
hover = new GUIStyleState() {
|
||||
background = pb_AboutWindow.LoadAssetAtPath<Texture2D>(string.Format("{0}/Images/DownloadPB_Hover.png", pb_AboutWindow.AboutRoot))
|
||||
},
|
||||
};
|
||||
|
||||
updateHeader = new GUIStyle()
|
||||
{
|
||||
margin = new RectOffset(0, 0, 0, 0),
|
||||
alignment = TextAnchor.MiddleCenter,
|
||||
fixedHeight = 85,
|
||||
fontSize = 24,
|
||||
wordWrap = true,
|
||||
font = pb_AboutWindow.LoadAssetAtPath<Font>(string.Format("{0}/Font/{1}", pb_AboutWindow.AboutRoot, pb_AboutWindow.FONT_MEDIUM)),
|
||||
normal = new GUIStyleState() { textColor = EditorGUIUtility.isProSkin ? pb_AboutWindow.font_white : pb_AboutWindow.font_black }
|
||||
};
|
||||
}
|
||||
|
||||
void OnGUI()
|
||||
{
|
||||
GUILayout.BeginHorizontal();
|
||||
|
||||
if( GUILayout.Button(gc_DownloadUpdate, downloadImageStyle) )
|
||||
Application.OpenURL("http://u3d.as/30b");
|
||||
|
||||
if(GUILayoutUtility.GetLastRect().Contains(Event.current.mousePosition))
|
||||
Repaint();
|
||||
|
||||
GUILayout.BeginVertical(pb_AboutWindow.changelogStyle);
|
||||
GUILayout.Label("ProBuilder Update\nAvailable", updateHeader);
|
||||
GUILayout.EndVertical();
|
||||
|
||||
GUILayout.EndHorizontal();
|
||||
|
||||
scroll = EditorGUILayout.BeginScrollView(scroll, pb_AboutWindow.changelogStyle);
|
||||
GUILayout.Label(string.Format("Version: {0}", m_NewVersion.text), pb_AboutWindow.versionInfoStyle);
|
||||
GUILayout.Label("\n" + m_NewChangelog, pb_AboutWindow.changelogTextStyle);
|
||||
EditorGUILayout.EndScrollView();
|
||||
|
||||
GUILayout.BeginHorizontal();
|
||||
GUILayout.FlexibleSpace();
|
||||
checkForProBuilderUpdates = EditorGUILayout.Toggle("Show Update Notifications", checkForProBuilderUpdates);
|
||||
GUILayout.Space(4);
|
||||
GUILayout.EndHorizontal();
|
||||
GUILayout.Space(10);
|
||||
}
|
||||
}
|
||||
}
|
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9d4c868a7342844649d0dce8c2a58a4f
|
||||
timeCreated: 1487708635
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@@ -0,0 +1,116 @@
|
||||
using UnityEngine;
|
||||
using UnityEditor;
|
||||
using System.Text.RegularExpressions;
|
||||
using ProBuilder2.Common;
|
||||
|
||||
namespace ProBuilder2.EditorCommon
|
||||
{
|
||||
/**
|
||||
* Check for updates to ProBuilder.
|
||||
*/
|
||||
[InitializeOnLoad]
|
||||
static class pb_UpdateCheck
|
||||
{
|
||||
const string PROBUILDER_VERSION_URL = "http://procore3d.github.io/probuilder2/current.txt";
|
||||
const string pbLastWebVersionChecked = "pbLastWebVersionChecked";
|
||||
static WWW updateQuery;
|
||||
static bool calledFromMenu = false;
|
||||
|
||||
static pb_UpdateCheck()
|
||||
{
|
||||
if(pb_PreferencesInternal.GetBool(pb_Constant.pbCheckForProBuilderUpdates))
|
||||
{
|
||||
calledFromMenu = false;
|
||||
CheckForUpdate();
|
||||
}
|
||||
}
|
||||
|
||||
[MenuItem("Tools/" + pb_Constant.PRODUCT_NAME + "/Check for Updates", false, pb_Constant.MENU_ABOUT + 1)]
|
||||
static void MenuCheckForUpdate()
|
||||
{
|
||||
calledFromMenu = true;
|
||||
CheckForUpdate();
|
||||
}
|
||||
|
||||
public static void CheckForUpdate()
|
||||
{
|
||||
if(updateQuery == null)
|
||||
{
|
||||
updateQuery = new WWW(PROBUILDER_VERSION_URL);
|
||||
EditorApplication.update += Update;
|
||||
}
|
||||
}
|
||||
|
||||
static void Update()
|
||||
{
|
||||
if (updateQuery != null)
|
||||
{
|
||||
if (!updateQuery.isDone)
|
||||
return;
|
||||
|
||||
try
|
||||
{
|
||||
if (string.IsNullOrEmpty(updateQuery.error) || !Regex.IsMatch(updateQuery.text, "404 not found", RegexOptions.IgnoreCase) )
|
||||
{
|
||||
pb_VersionInfo webVersion;
|
||||
string webChangelog;
|
||||
|
||||
if(!pb_VersionUtil.FormatChangelog(updateQuery.text, out webVersion, out webChangelog))
|
||||
{
|
||||
FailedConnection();
|
||||
}
|
||||
else
|
||||
{
|
||||
pb_VersionInfo current;
|
||||
|
||||
// first test if the installed version is already up to date
|
||||
if( !pb_VersionUtil.GetCurrent(out current) || webVersion.CompareTo(current) > 0 )
|
||||
{
|
||||
// next, test if a notification for this version has already been shown
|
||||
string lastNotification = pb_PreferencesInternal.GetString(pbLastWebVersionChecked, "");
|
||||
|
||||
if(calledFromMenu || !lastNotification.Equals(webVersion.text))
|
||||
{
|
||||
pb_UpdateAvailable.Init(webVersion, webChangelog);
|
||||
pb_PreferencesInternal.SetString(pbLastWebVersionChecked, webVersion.text);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
UpToDate(current.ToString());
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
FailedConnection();
|
||||
}
|
||||
}
|
||||
catch(System.Exception e)
|
||||
{
|
||||
FailedConnection(string.Format("Error: Is build target is Webplayer?\n\n{0}", e.ToString()));
|
||||
}
|
||||
|
||||
updateQuery = null;
|
||||
}
|
||||
|
||||
calledFromMenu = false;
|
||||
EditorApplication.update -= Update;
|
||||
}
|
||||
|
||||
static void UpToDate(string version)
|
||||
{
|
||||
if(calledFromMenu)
|
||||
EditorUtility.DisplayDialog("ProBuilder Update Check", string.Format("You're up to date!\n\nInstalled Version: {0}\nLatest Version: {0}", version), "Okay");
|
||||
}
|
||||
|
||||
static void FailedConnection(string error = null)
|
||||
{
|
||||
if(calledFromMenu)
|
||||
EditorUtility.DisplayDialog(
|
||||
"ProBuilder Update Check",
|
||||
error == null ? "Failed to connect to server!" : string.Format("Failed to connect to server!\n\n{0}", error.ToString()),
|
||||
"Okay");
|
||||
}
|
||||
}
|
||||
}
|
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 67dd077e8983d4474916d2b02018b937
|
||||
timeCreated: 1487703505
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@@ -0,0 +1,145 @@
|
||||
using System.Text.RegularExpressions;
|
||||
|
||||
namespace ProBuilder2.EditorCommon
|
||||
{
|
||||
public enum VersionType
|
||||
{
|
||||
Final = 3,
|
||||
Beta = 2,
|
||||
Patch = 1
|
||||
}
|
||||
|
||||
[System.Serializable]
|
||||
public struct pb_VersionInfo : System.IEquatable<pb_VersionInfo>, System.IComparable<pb_VersionInfo>
|
||||
{
|
||||
public int major;
|
||||
public int minor;
|
||||
public int patch;
|
||||
public int build;
|
||||
public VersionType type;
|
||||
public string text;
|
||||
public bool valid;
|
||||
|
||||
public override bool Equals(object o)
|
||||
{
|
||||
return o is pb_VersionInfo && this.Equals((pb_VersionInfo) o);
|
||||
}
|
||||
|
||||
public override int GetHashCode()
|
||||
{
|
||||
int hash = 13;
|
||||
|
||||
unchecked
|
||||
{
|
||||
if(valid)
|
||||
{
|
||||
hash = (hash * 7) + major.GetHashCode();
|
||||
hash = (hash * 7) + minor.GetHashCode();
|
||||
hash = (hash * 7) + patch.GetHashCode();
|
||||
hash = (hash * 7) + build.GetHashCode();
|
||||
hash = (hash * 7) + type.GetHashCode();
|
||||
}
|
||||
else
|
||||
{
|
||||
return text.GetHashCode();
|
||||
}
|
||||
}
|
||||
|
||||
return hash;
|
||||
}
|
||||
|
||||
public bool Equals(pb_VersionInfo version)
|
||||
{
|
||||
if(valid != version.valid)
|
||||
return false;
|
||||
|
||||
if(valid)
|
||||
{
|
||||
return major == version.major &&
|
||||
minor == version.minor &&
|
||||
patch == version.patch &&
|
||||
type == version.type &&
|
||||
build == version.build;
|
||||
}
|
||||
else
|
||||
{
|
||||
if( string.IsNullOrEmpty(text) || string.IsNullOrEmpty(version.text) )
|
||||
return false;
|
||||
|
||||
return text.Equals(version.text);
|
||||
}
|
||||
}
|
||||
|
||||
public int CompareTo(pb_VersionInfo version)
|
||||
{
|
||||
const int GREATER = 1;
|
||||
const int LESS = -1;
|
||||
|
||||
if(this.Equals(version))
|
||||
return 0;
|
||||
else if(major > version.major)
|
||||
return GREATER;
|
||||
else if(major < version.major)
|
||||
return LESS;
|
||||
else if(minor > version.minor)
|
||||
return GREATER;
|
||||
else if(minor < version.minor)
|
||||
return LESS;
|
||||
else if(patch > version.patch)
|
||||
return GREATER;
|
||||
else if(patch < version.patch)
|
||||
return LESS;
|
||||
else if((int)type > (int)version.type)
|
||||
return GREATER;
|
||||
else if((int)type < (int)version.type)
|
||||
return LESS;
|
||||
else if(build > version.build)
|
||||
return GREATER;
|
||||
else
|
||||
return LESS;
|
||||
}
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
return string.Format("{0}.{1}.{2}{3}{4}", major, minor, patch, type.ToString().ToLower()[0], build);
|
||||
}
|
||||
|
||||
/**
|
||||
* Create a pb_VersionInfo type from a string.
|
||||
* Ex: "2.5.3b1"
|
||||
*/
|
||||
public static pb_VersionInfo FromString(string str)
|
||||
{
|
||||
pb_VersionInfo version = new pb_VersionInfo();
|
||||
version.text = str;
|
||||
|
||||
try
|
||||
{
|
||||
string[] split = Regex.Split(str, @"[\.A-Za-z]");
|
||||
Match type = Regex.Match(str, @"A-Za-z");
|
||||
int.TryParse(split[0], out version.major);
|
||||
int.TryParse(split[1], out version.minor);
|
||||
int.TryParse(split[2], out version.patch);
|
||||
int.TryParse(split[3], out version.build);
|
||||
version.type = GetVersionType(type != null && type.Success ? type.Value : "");
|
||||
version.valid = true;
|
||||
}
|
||||
catch
|
||||
{
|
||||
version.valid = false;
|
||||
}
|
||||
|
||||
return version;
|
||||
}
|
||||
|
||||
static VersionType GetVersionType(string type)
|
||||
{
|
||||
if( type.Equals("b") || type.Equals("B") )
|
||||
return VersionType.Beta;
|
||||
else if( type.Equals("p") || type.Equals("P") )
|
||||
return VersionType.Patch;
|
||||
|
||||
return VersionType.Final;
|
||||
}
|
||||
}
|
||||
}
|
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3d9c925b318d04a55bd2d4ad282f4f9f
|
||||
timeCreated: 1487711113
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@@ -0,0 +1,133 @@
|
||||
using UnityEngine;
|
||||
using UnityEditor;
|
||||
using System.IO;
|
||||
using System.Text;
|
||||
using System.Collections;
|
||||
using System.Text.RegularExpressions;
|
||||
|
||||
namespace ProBuilder2.EditorCommon
|
||||
{
|
||||
/**
|
||||
* Contains information that the pb_AboutEntry.txt file holds.
|
||||
*/
|
||||
[System.Serializable]
|
||||
internal class pb_AboutEntry
|
||||
{
|
||||
public string name;
|
||||
public string identifier;
|
||||
public string version;
|
||||
public string date;
|
||||
public string changelogPath;
|
||||
|
||||
public const string KEY_NAME = "name: ";
|
||||
public const string KEY_IDENTIFIER = "identifier: ";
|
||||
public const string KEY_VERSION = "version: ";
|
||||
public const string KEY_DATE = "date: ";
|
||||
public const string KEY_CHANGELOG = "changelog: ";
|
||||
}
|
||||
|
||||
/**
|
||||
* Utility methods for finding and extracting version & changelog information.
|
||||
*/
|
||||
internal static class pb_VersionUtil
|
||||
{
|
||||
/**
|
||||
* Get information from the currently installed ProBuilder version.
|
||||
*/
|
||||
public static bool GetAboutEntry(out pb_AboutEntry about)
|
||||
{
|
||||
about = null;
|
||||
|
||||
string[] matches = Directory.GetFiles("./Assets", "pc_AboutEntry_ProBuilder.txt", SearchOption.AllDirectories);
|
||||
|
||||
if(matches == null || matches.Length < 1)
|
||||
return false;
|
||||
|
||||
for(int i = 0; i < matches.Length && about == null; i++)
|
||||
about = ParseAboutEntry(matches[i]);
|
||||
|
||||
return about != null;
|
||||
}
|
||||
|
||||
public static bool GetCurrent(out pb_VersionInfo version)
|
||||
{
|
||||
pb_AboutEntry about;
|
||||
|
||||
if(!GetAboutEntry(out about))
|
||||
{
|
||||
version = new pb_VersionInfo();
|
||||
return false;
|
||||
}
|
||||
|
||||
version = pb_VersionInfo.FromString(about.version);
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Extracts and formats the latest changelog entry into rich text. Also grabs the version.
|
||||
*/
|
||||
public static bool FormatChangelog(string raw, out pb_VersionInfo version, out string formatted_changes)
|
||||
{
|
||||
bool success = true;
|
||||
|
||||
// get first version entry
|
||||
string[] split = Regex.Split(raw, "(?mi)^#\\s", RegexOptions.Multiline);
|
||||
|
||||
// get the version info
|
||||
try
|
||||
{
|
||||
Match versionMatch = Regex.Match(split[1], @"(?<=^ProBuilder\s).[0-9]*\.[0-9]*\.[0-9]*[a-z][0-9]*");
|
||||
version = pb_VersionInfo.FromString(versionMatch.Success ? versionMatch.Value : split[1].Split('\n')[0]);
|
||||
}
|
||||
catch
|
||||
{
|
||||
version = pb_VersionInfo.FromString("not found");
|
||||
success = false;
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
string[] newLineSplit = split[1].Trim().Split('\n');
|
||||
for(int i = 2; i < newLineSplit.Length; i++)
|
||||
sb.AppendLine(newLineSplit[i]);
|
||||
|
||||
formatted_changes = sb.ToString();
|
||||
formatted_changes = Regex.Replace(formatted_changes, "^-", "\u2022", RegexOptions.Multiline);
|
||||
formatted_changes = Regex.Replace(formatted_changes, @"(?<=^##\\s).*", "<size=16><b>${0}</b></size>", RegexOptions.Multiline);
|
||||
formatted_changes = Regex.Replace(formatted_changes, @"^##\ ", "", RegexOptions.Multiline);
|
||||
}
|
||||
catch
|
||||
{
|
||||
formatted_changes = "";
|
||||
success = false;
|
||||
}
|
||||
|
||||
return success;
|
||||
}
|
||||
|
||||
private static pb_AboutEntry ParseAboutEntry(string path)
|
||||
{
|
||||
if (!File.Exists(path))
|
||||
return null;
|
||||
|
||||
pb_AboutEntry about = new pb_AboutEntry();
|
||||
|
||||
foreach(string str in File.ReadAllLines(path))
|
||||
{
|
||||
if(str.StartsWith(pb_AboutEntry.KEY_NAME))
|
||||
about.name = str.Replace(pb_AboutEntry.KEY_NAME, "").Trim();
|
||||
else if(str.StartsWith(pb_AboutEntry.KEY_IDENTIFIER))
|
||||
about.identifier = str.Replace(pb_AboutEntry.KEY_IDENTIFIER, "").Trim();
|
||||
else if(str.StartsWith(pb_AboutEntry.KEY_VERSION))
|
||||
about.version = str.Replace(pb_AboutEntry.KEY_VERSION, "").Trim();
|
||||
else if(str.StartsWith(pb_AboutEntry.KEY_DATE))
|
||||
about.date = str.Replace(pb_AboutEntry.KEY_DATE, "").Trim();
|
||||
else if(str.StartsWith(pb_AboutEntry.KEY_CHANGELOG))
|
||||
about.changelogPath = str.Replace(pb_AboutEntry.KEY_CHANGELOG, "").Trim();
|
||||
}
|
||||
|
||||
return about;
|
||||
}
|
||||
}
|
||||
}
|
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: d1add08945e58c444a133612549b4260
|
||||
timeCreated: 1487944665
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ae10479e200f949b4af89b788185b48f
|
||||
folderAsset: yes
|
||||
timeCreated: 1485893747
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@@ -0,0 +1,20 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f79c0638c9ad24986acd8d34c0e20256
|
||||
timeCreated: 1485898685
|
||||
licenseType: Store
|
||||
TrueTypeFontImporter:
|
||||
serializedVersion: 3
|
||||
fontSize: 16
|
||||
forceTextureCase: -2
|
||||
characterSpacing: 1
|
||||
characterPadding: 0
|
||||
includeFontData: 1
|
||||
fontNames: []
|
||||
fallbackFontReferences:
|
||||
- {fileID: 12800000, guid: ff3a015580ef046ac85fa087703e0a2d, type: 3}
|
||||
customCharacters:
|
||||
fontRenderingMode: 3
|
||||
ascentCalculationMode: 1
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@@ -0,0 +1,20 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ff3a015580ef046ac85fa087703e0a2d
|
||||
timeCreated: 1485898392
|
||||
licenseType: Store
|
||||
TrueTypeFontImporter:
|
||||
serializedVersion: 3
|
||||
fontSize: 16
|
||||
forceTextureCase: -2
|
||||
characterSpacing: 1
|
||||
characterPadding: 0
|
||||
includeFontData: 1
|
||||
fontNames: []
|
||||
fallbackFontReferences:
|
||||
- {fileID: 12800000, guid: f79c0638c9ad24986acd8d34c0e20256, type: 3}
|
||||
customCharacters:
|
||||
fontRenderingMode: 3
|
||||
ascentCalculationMode: 1
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@@ -0,0 +1,47 @@
|
||||
Copyright (c) 2011-2015, Omnibus-Type (www.omnibus-type.com|omnibus.type@gmail.com).
|
||||
|
||||
This Font Software is licensed under the SIL Open Font License, Version 1.1.
|
||||
This license is copied below, and is also available with a FAQ at:
|
||||
http://scripts.sil.org/OFL
|
||||
|
||||
This Font Software is licensed under the SIL Open Font License, Version 1.1.
|
||||
This license is copied below, and is also available with a FAQ at: http://scripts.sil.org/OFL
|
||||
|
||||
-----------------------------------------------------------
|
||||
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
|
||||
-----------------------------------------------------------
|
||||
|
||||
PREAMBLE
|
||||
The goals of the Open Font License (OFL) are to stimulate worldwide development of collaborative font projects, to support the font creation efforts of academic and linguistic communities, and to provide a free and open framework in which fonts may be shared and improved in partnership with others.
|
||||
|
||||
The OFL allows the licensed fonts to be used, studied, modified and redistributed freely as long as they are not sold by themselves. The fonts, including any derivative works, can be bundled, embedded, redistributed and/or sold with any software provided that any reserved names are not used by derivative works. The fonts and derivatives, however, cannot be released under any other type of license. The requirement for fonts to remain under this license does not apply to any document created using the fonts or their derivatives.
|
||||
|
||||
DEFINITIONS
|
||||
"Font Software" refers to the set of files released by the Copyright Holder(s) under this license and clearly marked as such. This may include source files, build scripts and documentation.
|
||||
|
||||
"Reserved Font Name" refers to any names specified as such after the copyright statement(s).
|
||||
|
||||
"Original Version" refers to the collection of Font Software components as distributed by the Copyright Holder(s).
|
||||
|
||||
"Modified Version" refers to any derivative made by adding to, deleting, or substituting -- in part or in whole -- any of the components of the Original Version, by changing formats or by porting the Font Software to a new environment.
|
||||
|
||||
"Author" refers to any designer, engineer, programmer, technical writer or other person who contributed to the Font Software.
|
||||
|
||||
PERMISSION & CONDITIONS
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of the Font Software, to use, study, copy, merge, embed, modify, redistribute, and sell modified and unmodified copies of the Font Software, subject to the following conditions:
|
||||
|
||||
1) Neither the Font Software nor any of its individual components, in Original or Modified Versions, may be sold by itself.
|
||||
|
||||
2) Original or Modified Versions of the Font Software may be bundled, redistributed and/or sold with any software, provided that each copy contains the above copyright notice and this license. These can be included either as stand-alone text files, human-readable headers or in the appropriate machine-readable metadata fields within text or binary files as long as those fields can be easily viewed by the user.
|
||||
|
||||
3) No Modified Version of the Font Software may use the Reserved Font Name(s) unless explicit written permission is granted by the corresponding Copyright Holder. This restriction only applies to the primary font name as presented to the users.
|
||||
|
||||
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font Software shall not be used to promote, endorse or advertise any Modified Version, except to acknowledge the contribution(s) of the Copyright Holder(s) and the Author(s) or with their explicit written permission.
|
||||
|
||||
5) The Font Software, modified or unmodified, in part or in whole, must be distributed entirely under this license, and must not be distributed under any other license. The requirement for fonts to remain under this license does not apply to any document created using the Font Software.
|
||||
|
||||
TERMINATION
|
||||
This license becomes null and void if any of the above conditions are not met.
|
||||
|
||||
DISCLAIMER
|
||||
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE FONT SOFTWARE.
|
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 18e88fe929cd84916b50f8677be466e3
|
||||
timeCreated: 1485898392
|
||||
licenseType: Store
|
||||
TextScriptImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f326e8a65c528eb42a075a91b0dfafd8
|
After Width: | Height: | Size: 41 KiB |
@@ -0,0 +1,88 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 549ff69cefce9de4b9bca905c53fdafb
|
||||
TextureImporter:
|
||||
fileIDToRecycleName: {}
|
||||
externalObjects: {}
|
||||
serializedVersion: 9
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
sRGBTexture: 0
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapsPreserveCoverage: 0
|
||||
alphaTestReferenceValue: 0.5
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 0
|
||||
aniso: -1
|
||||
mipBias: -100
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 0
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 0
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 2
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID:
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
After Width: | Height: | Size: 51 KiB |
@@ -0,0 +1,88 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 0bbc52f3a0f2f114baa8507d90afb6ac
|
||||
TextureImporter:
|
||||
fileIDToRecycleName: {}
|
||||
externalObjects: {}
|
||||
serializedVersion: 9
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
sRGBTexture: 0
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapsPreserveCoverage: 0
|
||||
alphaTestReferenceValue: 0.5
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 0
|
||||
aniso: -1
|
||||
mipBias: -100
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 0
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 0
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 2
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID:
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
After Width: | Height: | Size: 49 KiB |
@@ -0,0 +1,88 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e030e57a46f926e47b817fc01887ad54
|
||||
TextureImporter:
|
||||
fileIDToRecycleName: {}
|
||||
externalObjects: {}
|
||||
serializedVersion: 9
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
sRGBTexture: 0
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapsPreserveCoverage: 0
|
||||
alphaTestReferenceValue: 0.5
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 0
|
||||
aniso: -1
|
||||
mipBias: -100
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 0
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 0
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 2
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID:
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
After Width: | Height: | Size: 2.8 KiB |
@@ -0,0 +1,88 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e0f6e2f766fe4d04ab8c253b1618272b
|
||||
TextureImporter:
|
||||
fileIDToRecycleName: {}
|
||||
externalObjects: {}
|
||||
serializedVersion: 9
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
sRGBTexture: 0
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapsPreserveCoverage: 0
|
||||
alphaTestReferenceValue: 0.5
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 0
|
||||
aniso: -1
|
||||
mipBias: -100
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 0
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 0
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 2
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID:
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
After Width: | Height: | Size: 2.9 KiB |
@@ -0,0 +1,88 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 16dae74b104776746bda3e81ceee7404
|
||||
TextureImporter:
|
||||
fileIDToRecycleName: {}
|
||||
externalObjects: {}
|
||||
serializedVersion: 9
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
sRGBTexture: 0
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapsPreserveCoverage: 0
|
||||
alphaTestReferenceValue: 0.5
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 0
|
||||
aniso: -1
|
||||
mipBias: -100
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 0
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 0
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 2
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID:
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
After Width: | Height: | Size: 1.2 KiB |
@@ -0,0 +1,88 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 38f0f430a86c8334696904a1fd4bea22
|
||||
TextureImporter:
|
||||
fileIDToRecycleName: {}
|
||||
externalObjects: {}
|
||||
serializedVersion: 9
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
sRGBTexture: 0
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapsPreserveCoverage: 0
|
||||
alphaTestReferenceValue: 0.5
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 0
|
||||
aniso: -1
|
||||
mipBias: -100
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 0
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 0
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 2
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID:
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
After Width: | Height: | Size: 175 B |
@@ -0,0 +1,88 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 24bf19bd687f74c4697e5400e5dce7d9
|
||||
TextureImporter:
|
||||
fileIDToRecycleName: {}
|
||||
externalObjects: {}
|
||||
serializedVersion: 9
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
sRGBTexture: 0
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapsPreserveCoverage: 0
|
||||
alphaTestReferenceValue: 0.5
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 0
|
||||
aniso: -1
|
||||
mipBias: -100
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 0
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 0
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 2
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID:
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@@ -0,0 +1,287 @@
|
||||
# Third-party code & licenses
|
||||
|
||||
Third-party code and licenses used in ProBuilder.
|
||||
|
||||
Where applicable links to ports & forks are also listed (original project
|
||||
is always listed first).
|
||||
|
||||
---
|
||||
|
||||
## Poly2Tri
|
||||
|
||||
- https://github.com/greenm01/poly2tri
|
||||
- https://github.com/MaulingMonkey/poly2tri-cs
|
||||
- https://github.com/procore3d/poly2tri-cs
|
||||
|
||||
Poly2Tri Copyright (c) 2009-2010, Poly2Tri Contributors
|
||||
http://code.google.com/p/poly2tri/
|
||||
|
||||
All rights reserved.
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions are met:
|
||||
|
||||
* Redistributions of source code must retain the above copyright notice,
|
||||
this list of conditions and the following disclaimer.
|
||||
* Redistributions in binary form must reproduce the above copyright notice,
|
||||
this list of conditions and the following disclaimer in the documentation
|
||||
and/or other materials provided with the distribution.
|
||||
* Neither the name of Poly2Tri nor the names of its contributors may be
|
||||
used to endorse or promote products derived from this software without
|
||||
specific prior written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
---
|
||||
|
||||
## csg.js
|
||||
|
||||
- https://github.com/evanw/csg.js
|
||||
- https://github.com/karl-/pb_CSG
|
||||
|
||||
Copyright (c) 2011 Evan Wallace (http://madebyevan.com/)
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||
this software and associated documentation files (the "Software"), to deal in
|
||||
the Software without restriction, including without limitation the rights to
|
||||
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
|
||||
of the Software, and to permit persons to whom the Software is furnished to do
|
||||
so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
|
||||
---
|
||||
|
||||
## KdTree
|
||||
|
||||
- https://github.com/codeandcats/KdTree
|
||||
- https://github.com/procore3d/KdTree
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) 2013 codeandcats
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||
this software and associated documentation files (the "Software"), to deal in
|
||||
the Software without restriction, including without limitation the rights to
|
||||
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
||||
the Software, and to permit persons to whom the Software is furnished to do so,
|
||||
subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
|
||||
---
|
||||
|
||||
## MkDocs
|
||||
|
||||
- http://www.mkdocs.org/
|
||||
|
||||
BSD 2-clause "Simplified" License
|
||||
|
||||
Copyright © 2014, Tom Christie. All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or
|
||||
without modification, are permitted provided that the following
|
||||
conditions are met:
|
||||
|
||||
Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in
|
||||
the documentation and/or other materials provided with the
|
||||
distribution.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
|
||||
CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
|
||||
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
|
||||
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
|
||||
USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
||||
AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
||||
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
---
|
||||
|
||||
## Cinder
|
||||
|
||||
- https://github.com/chrissimpkins/cinder
|
||||
- https://github.com/procore3d/cinder
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) 2016 Chris Simpkins
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||
this software and associated documentation files (the "Software"), to deal in
|
||||
the Software without restriction, including without limitation the rights to
|
||||
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
||||
the Software, and to permit persons to whom the Software is furnished to do so,
|
||||
subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
|
||||
---
|
||||
|
||||
## pb_Stl
|
||||
|
||||
- https://github.com/karl-/pb_Stl
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) 2016 Karl Henkel
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
|
||||
---
|
||||
|
||||
## Asap Font
|
||||
|
||||
Copyright (c) 2011-2015, Omnibus-Type
|
||||
(www.omnibus-type.com|omnibus.type@gmail.com).
|
||||
|
||||
This Font Software is licensed under the SIL Open Font License, Version 1.1.
|
||||
This license is copied below, and is also available with a FAQ at:
|
||||
http://scripts.sil.org/OFL
|
||||
|
||||
This Font Software is licensed under the SIL Open Font License, Version 1.1.
|
||||
This license is copied below, and is also available with a FAQ at:
|
||||
http://scripts.sil.org/OFL
|
||||
|
||||
-----------------------------------------------------------
|
||||
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
|
||||
-----------------------------------------------------------
|
||||
|
||||
PREAMBLE
|
||||
The goals of the Open Font License (OFL) are to stimulate worldwide development
|
||||
of collaborative font projects, to support the font creation efforts of
|
||||
academic and linguistic communities, and to provide a free and open framework
|
||||
in which fonts may be shared and improved in partnership with others.
|
||||
|
||||
The OFL allows the licensed fonts to be used, studied, modified and
|
||||
redistributed freely as long as they are not sold by themselves. The fonts,
|
||||
including any derivative works, can be bundled, embedded, redistributed and/or
|
||||
sold with any software provided that any reserved names are not used by
|
||||
derivative works. The fonts and derivatives, however, cannot be released under
|
||||
any other type of license. The requirement for fonts to remain under this
|
||||
license does not apply to any document created using the fonts or their
|
||||
derivatives.
|
||||
|
||||
DEFINITIONS
|
||||
"Font Software" refers to the set of files released by the Copyright Holder(s)
|
||||
under this license and clearly marked as such. This may include source files,
|
||||
build scripts and documentation.
|
||||
|
||||
"Reserved Font Name" refers to any names specified as such after the copyright
|
||||
statement(s).
|
||||
|
||||
"Original Version" refers to the collection of Font Software components as
|
||||
distributed by the Copyright Holder(s).
|
||||
|
||||
"Modified Version" refers to any derivative made by adding to, deleting, or
|
||||
substituting -- in part or in whole -- any of the components of the Original
|
||||
Version, by changing formats or by porting the Font Software to a new
|
||||
environment.
|
||||
|
||||
"Author" refers to any designer, engineer, programmer, technical writer or
|
||||
other person who contributed to the Font Software.
|
||||
|
||||
PERMISSION & CONDITIONS
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||
the Font Software, to use, study, copy, merge, embed, modify, redistribute, and
|
||||
sell modified and unmodified copies of the Font Software, subject to the
|
||||
following conditions:
|
||||
|
||||
1) Neither the Font Software nor any of its individual components, in Original
|
||||
or Modified Versions, may be sold by itself.
|
||||
|
||||
2) Original or Modified Versions of the Font Software may be bundled,
|
||||
redistributed and/or sold with any software, provided that each copy contains
|
||||
the above copyright notice and this license. These can be included either as
|
||||
stand-alone text files, human-readable headers or in the appropriate
|
||||
machine-readable metadata fields within text or binary files as long as those
|
||||
fields can be easily viewed by the user.
|
||||
|
||||
3) No Modified Version of the Font Software may use the Reserved Font Name(s)
|
||||
unless explicit written permission is granted by the corresponding Copyright
|
||||
Holder. This restriction only applies to the primary font name as presented to
|
||||
the users.
|
||||
|
||||
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font Software
|
||||
shall not be used to promote, endorse or advertise any Modified Version, except
|
||||
to acknowledge the contribution(s) of the Copyright Holder(s) and the Author(s)
|
||||
or with their explicit written permission.
|
||||
|
||||
5) The Font Software, modified or unmodified, in part or in whole, must be
|
||||
distributed entirely under this license, and must not be distributed under any
|
||||
other license. The requirement for fonts to remain under this license does not
|
||||
apply to any document created using the Font Software.
|
||||
|
||||
TERMINATION
|
||||
This license becomes null and void if any of the above conditions are not met.
|
||||
|
||||
DISCLAIMER
|
||||
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT,
|
||||
TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE FOR
|
||||
ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL,
|
||||
INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF
|
||||
CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO USE
|
||||
THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE FONT SOFTWARE.
|
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 33a80148273263043b571d27ae904a61
|
||||
timeCreated: 1494518066
|
||||
licenseType: Store
|
||||
TextScriptImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
1549
assignment10final/Assets/ProCore/ProBuilder/About/changelog.txt
Normal file
@@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: aae3986145fc76f4faefc61ad071abaa
|
@@ -0,0 +1,5 @@
|
||||
name: ProBuilder
|
||||
identifier: ProBuilder_AboutWindowIdentifier
|
||||
version: 2.9.8f3
|
||||
date: 11-6-2017
|
||||
changelog: Assets/ProCore/ProBuilder/About/changelog.txt
|
@@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 5a53e00b098bf9549b7dec9b8922ae7e
|