{"id":2140,"date":"2019-10-03T01:18:35","date_gmt":"2019-10-02T17:18:35","guid":{"rendered":"https:\/\/www.clonefactor.com\/wordpress\/?p=2140"},"modified":"2019-10-03T01:18:37","modified_gmt":"2019-10-02T17:18:37","slug":"%e6%88%91%e7%9a%84%e4%ba%ba%e5%bd%a2%e9%96%8b%e7%99%bc%e7%ad%86%e8%a8%98%e4%ba%8c-subset","status":"publish","type":"post","link":"https:\/\/www.clonefactor.com\/wordpress\/program\/unity3d\/devlog\/2140\/","title":{"rendered":"\u6211\u7684\u4eba\u5f62\u958b\u767c\u7b46\u8a18(\u4e8c) Subset"},"content":{"rendered":"\n<p>\u88fd\u4f5c\u81ea\u5df1\u7684\u4eba\u5f62\u6642\u6709\u4e00\u500b\u81ea\u5df1\u8a02\u7684\u898f\u5247, \u5e0c\u671b\u300c\u5118\u91cf\u7684\u628a\u529f\u80fd\u90fd\u5206\u958b\u505a\u300d<\/p>\n<ul>\n<li>\u884c\u70ba\u5be6\u73fe object oriented programming (OOP), \u5730\u9762\u884c\u8d70, \u8df3, \u7a7a\u4e2d\u4f4d\u79fb\u7b49\u5206\u958b\u4e0d\u540c\u7684class \u505a.<\/li>\n<li>\u4e0d\u540c\u7684\u529f\u80fd\u53ef\u4ee5\u81ea\u7531\u7684\u5728\u7dda on\/off<\/li>\n<\/ul>\n<p>\u5c31\u9019\u6a23\u53ef\u4ee5\u6709\u4ee5\u4e0b\u7684\u597d\u8655<\/p>\n<ul>\n<li>\u66f4\u597d\u7684\u65b9\u4fbf\u7ba1\u7406\u4e0d\u540c\u7684\u52d5\u4f5c&amp;\u529f\u80fd<\/li>\n<li>\u4e0d\u540c\u7684\u529f\u80fd\u66f4\u65b0\u7684\u6642\u5019\u66f4\u5bb9\u6613\u7684\u627e\u51fa\u63a5\u5408\u9ede.<\/li>\n<\/ul>\n<p>\u7f3a\u9ede<\/p>\n<ul>\n<li>\u5c31\u662f\u7de8\u7a0b\u662f\u96e3\u5ea6\u9ad8\u554a.<\/li>\n<li>\u529f\u80fd\u4e4b\u9593\u4e92\u76f8\u5f71\u97ff\u7684\u72c0\u614b\u8981\u5584\u7528 locking, priority control \u7b49\u529f\u80fd.<\/li>\n<\/ul>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"csharp\">public class Avatar\n{\n    private AvatarSubset[] _subsets = null;\n    public AvatarSubset[] subsets\n    {\n        get\n        {\n            if (_subsets == null) \/\/ Ensure only run once.\n                _subsets = GetComponentInChildrens&lt;AvatarSubset&gt;();\n            return _subsets;\n        }\n    }\n    \n    private void Awake()\n    {\n        foreach(AvatarSubset sub in subsets)\n            sub.Init(this);\n    }\n}\n\n\/\/ Implement all related class via this type of methods.\npublic abstract class AvatarSubset\n{\n    protected Avatar avatar;\n    internal Init(Avatar _avatar) =&gt; avatar = _avatar;\n}<\/pre>\n<p>\u4eba\u7269\u7684\u4e3b class `Avatar.cs` \u5c31\u8b8a\u70ba\u53ea\u8ca0\u8cac\u505a\u63a5\u5408\u7684\u4e00\u500b\u5730\u65b9.<\/p>\n<p>AvatarSubset.cs \u5c31\u662f\u8ca0\u8cac\u628a Avatar \u88e1\u9762\u7684\u529f\u80fd\u5e36\u5230\u5176\u4e0b\u7684 sub-class \u4e2d\u4f7f\u7528.<\/p>\n<p>\u5982\u6b64\u6574\u500b\u7684\u4eba\u7269\u64cd\u4f5c, \u5c31\u662f\u4e00\u7d44\u7cbe\u78ba\u5230&#8217;\u5e40&#8217;\u7684\u4f4d\u79fb\u4f54\u7528\u6b0a\u4ea4\u63db.(\u9019\u90e8\u4efd\u4ee5\u5f8c\u6709\u6a5f\u6703\u518d\u89e3\u91cb)<\/p>\n<p>\u00a0<\/p>\n<p>\u00a0<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u88fd\u4f5c\u81ea\u5df1\u7684\u4eba\u5f62\u6642\u6709\u4e00\u500b\u81ea\u5df1\u8a02\u7684\u898f\u5247, \u5e0c\u671b\u300c\u5118\u91cf\u7684\u628a\u529f\u80fd\u90fd\u5206\u958b\u505a\u300d \u884c\u70ba\u5be6\u73fe object orie &hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[107,106],"tags":[43],"class_list":["post-2140","post","type-post","status-publish","format-standard","hentry","category-charactercontroller","category-devlog","tag-unity3d-2"],"_links":{"self":[{"href":"https:\/\/www.clonefactor.com\/wordpress\/wp-json\/wp\/v2\/posts\/2140","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.clonefactor.com\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.clonefactor.com\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.clonefactor.com\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.clonefactor.com\/wordpress\/wp-json\/wp\/v2\/comments?post=2140"}],"version-history":[{"count":3,"href":"https:\/\/www.clonefactor.com\/wordpress\/wp-json\/wp\/v2\/posts\/2140\/revisions"}],"predecessor-version":[{"id":2148,"href":"https:\/\/www.clonefactor.com\/wordpress\/wp-json\/wp\/v2\/posts\/2140\/revisions\/2148"}],"wp:attachment":[{"href":"https:\/\/www.clonefactor.com\/wordpress\/wp-json\/wp\/v2\/media?parent=2140"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.clonefactor.com\/wordpress\/wp-json\/wp\/v2\/categories?post=2140"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.clonefactor.com\/wordpress\/wp-json\/wp\/v2\/tags?post=2140"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}