https://docs.microsoft.com/ko-kr/aspnet/core/blazor/routing?view=aspnetcore-3.1

 

ASP.NET Core Blazor 라우팅

앱에서 요청을 라우팅하는 방법과 NavLink 구성 요소를 알아봅니다.

docs.microsoft.com

 

_Host.cshrml의 기본 라우팅 변경

@page "/{**path}"

batchmode에서 안됨

    public static void SetCloudProjectId(string id, string name, string company)
    {
        var type = Type.GetType("UnityEditor.Connect.UnityConnect, UnityEditor, Version = 0.0.0.0, Culture = neutral, PublicKeyToken = null");
        PropertyInfo instanceInfo = type.GetProperty("instance");
        object settingsInstance = instanceInfo.GetValue(null, null);

        MethodInfo unbind = type.GetMethod("UnbindProject");
        MethodInfo bind = type.GetMethod("BindProject");

        Debug.Log("Unbinding current cloud project");
        unbind.Invoke(settingsInstance, new System.Object[] { });

        Debug.LogFormat("Binding cloud project to {0}: {1} ({2})", name, id, company);
        bind.Invoke(settingsInstance, new System.Object[] { id, name, company });

        Debug.LogFormat("Binded cloud project to {0}: {1} ({2})", name, id, company);
    }

실행후에 유니티 재시작필요.

Jenkins에서 호출하는경우 빌드전에 따로 실행

유니티 Bind를 사용하는 경우 batch mode에서 제대로 안되서 파일 직접변경이 필요.

    public static void SetCloudProjectIdFile(string name, string id, string company)
    {
        const string filepath = "ProjectSettings/ProjectSettings.asset";
        string[] lines = File.ReadAllLines(filepath);
        var new_lines = new List<string>();
        id = " " + id;
        name = " " + name;
        company = " " + company;

        foreach (string line in lines)
        {
            string[] command = line.Split(':');
            if (command.Length < 2)
            {
                new_lines.Add(line);
                continue;
            }

            switch (command[0])
            {
                case "  cloudProjectId":
                    if (command[1] != id)
                    {
                        Debug.Log($"Replace {command[0]}");
                        new_lines.Add(string.Join(":", command[0], id));
                    }
                    break;

                case "  projectName":
                    if (command[1] != name)
                    {
                        Debug.Log($"Replace {command[0]}");
                        new_lines.Add(string.Join(":", command[0], name));
                    }
                    break;

                case "  organizationId":
                    if (command[1] != company)
                    {
                        Debug.Log($"Replace {command[0]}");
                        new_lines.Add(string.Join(":", command[0], company));
                    }
                    break;

                default:
                    new_lines.Add(line);
                    break;
            }
        }

        File.WriteAllLines(filepath, new_lines.ToArray());
        AssetDatabase.Refresh();
    }

rm -f play.prop
touch play.prop

echo GIT_COMMIT_SHORT=$(git rev-parse --short ${GIT_COMMIT}) > play.prop
echo GIT_REVISION=$(git rev-list --count ${GIT_COMMIT}) >> play.prop

DECLARE @str varchar(8000)

SET @str = '10,2,3,4,5,6,7,8,9'


DECLARE @InputString varchar(8000)

SELECT @InputString = ',' + @str + ','


;with qry(n, names) as

       (select len(list.names) - len(replace(list.names, ',', '')) - 1 as n, substring(list.names, 2, len(list.names)) as names

        from (select @InputString names) as list

        union all

        select (n - 1) as n,

               substring(names, 1 + charindex(',', names), len(names)) as names

        from qry

        where n > 1)

 select substring(names, 1, charindex(',', names) - 1) dwarf

 from qry;





DECLARE @str varchar(8000)

SET @str = '10,2,3,4,5,6,7,8,9'


DECLARE @InputString varchar(8000)

SELECT @InputString = @str + ','


;WITH RecursiveCSV(x,y) 

AS 

(

    SELECT 

        x = SUBSTRING(@InputString,0,CHARINDEX(',',@InputString,0)),

        y = SUBSTRING(@InputString,CHARINDEX(',',@InputString,0)+1,LEN(@InputString))

    UNION ALL

    SELECT 

        x = SUBSTRING(y,0,CHARINDEX(',',y,0)),

        y = SUBSTRING(y,CHARINDEX(',',y,0)+1,LEN(y))

    FROM 

        RecursiveCSV 

    WHERE

        SUBSTRING(y,CHARINDEX(',',y,0)+1,LEN(y)) <> '' OR 

        SUBSTRING(y,0,CHARINDEX(',',y,0)) <> ''

)

(select x FROM RecursiveCSV)

OPTION (MAXRECURSION 32767);



http://bit.ly/X8F31C

드디어 몬스터크라이가 티스토어에 입점했습니다.

아... 서버만 죽지 말아라;;

http://www.thisisgame.com/board/view.php?id=1207208&category=102

디스이즈게임에 기사가 나갔네요.

열심히 만들고 있습니다!!




Shift-JIS 코드표 : http://www.rikai.com/library/kanjitables/kanji_codes.sjis.shtml
상용한자표 : 
http://ja.wikipedia.org/wiki/%E5%B8%B8%E7%94%A8%E6%BC%A2%E5%AD%97%E4%B8%80%E8%A6%A7
캐리비안 점프 온라인 한국을 제외한 전세계 열렸습니다.
미국 http://itunes.apple.com/us/app/id417934947# 
홍콩 http://itunes.apple.com/hk/app/id417934947# 
많은 관심 부탁드립니다.
  1. 태성 2011.02.19 23:28

    멋진 녀석 같으니라공.. 돈은 안될지 모르겠지만 안드로이드용으로도 만들어줘~

    • Favicon of https://www.larosel.com BlogIcon 쑥갓 2011.02.20 13:17 신고

      일단 아이폰용이 자리를 잡아야 안드로이드용을 만들던가 하겠지;;

레이옷 아저씨 한테 이어 받은 내용입니다-ㅅ-;

몇 살 때 게임 개발을 시작했나요?
 흐음.. 몇살일까요.
 중1때였으니까, 14살.. 92년.. 경이네요.

어떻게 게임 개발을 시작하게 되었는가?
 으음.. 집에 있던 XT컴퓨터에서 삼국지3가 안돌아가서 좌절하고나서(orz) 그 당시에 이미 새로 나오는 게임들은 집에서 돌아가지 않는 상황이라 에잇. 내가 만들고 만다~ 라는 웃기지도 않은 동기로 시작하게 되었습니다.

게임 개발을 처음 시작했을 때의 개발 환경은?
 처음에는 정확히 기억나지는 않는데. 터보베이직인가 파워베이직인가를 썼던것 같습니다.
 한글라이브러리도 만들고 도트툴도 만들고 하다가, 한계를 느끼고 중3때 동네 컴퓨터 학원을 가서 C언어를 배웠습니다.
 그 후부터는 터보씨쫌 쓰다가 왓컴씨로 금방 갈아타고 대학가면서 VC로 갔습니다.

최초로 개발한 상용 게임은 어떤 게임이었나?
 다크에덴(http://darkeden.com). 아직도 절찬리에 서비스중인 초장수 게임.
 2001년 2월부터 개발에 참여하였습니다. 시기는 오픈베타 시작하고 한달이 좀 안됐을때 입니다.
 당시 동접이 150명정도로 기억을-_-;
 삽질도 많이 하고 좋은 동료분들이 많아서 배운것도 많았습니다.
 그 회사에서 일을 시작한게 인생의 가장 큰 전환기중 하나라고 생각합니다.
 다른 회사에 갔더라면 지금과는 상당히 다른 모습이 되어 있을지도 모르겠네요.

게임을 개발해오면서 사용했던 프로그래밍 언어들은?
 뭐 윈도우 프로그래머다 보니 상당히 한정적이군요.
 Visual C++ (6,2002,2003,2005), MFC, C#, ActiveX, HLSL, Python, Lua, XML(XML은 레이옷이 썼길래 썼는데. 이건 언어라고 하기에는 좀-ㅅ-)
 써놓기는 많이 써놨지만 실제로 많이쓰는건 VC, MFC, XML정도인겁니다.;

다시 직업을 선택하라고 해도 또 게임 개발을 선택할 것인가?
 아.. 어려운 주제입니다.
 게임을 만드는것도 좋아하고 코딩을 하는것도 좋아하지만..
 흐음....
 뭐 딱히 다르게 하고 싶은 직업은 없지만..
 다른 걸 해보고 싶기도 하군요.
 반반이라고 하지요.

신입 게임 개발자에게 알려주고픈 딱 한가지만 고른다면?
 기술적인 것들을 공부하는것도 중요하지만 논리적인 사고력을 기르는 것도 상당히 중요합니다.
 여태까지 일하면서 논리적인 부분이 부족해서 코드가 엉망이 되는 경우를 많이 보고 그것때문에 많이 고생했었습니다.
 더 중요한건 그런 사고방식을 고치려고 하지 않는 사람들을 많이 봐왔습니다.
사람의 성격이나 사고방식에 대해서 뭐라고 할 생각은 없지만 직업이 프로그래머라면 논리적인 사고력은 필수 입니다.

 그 외에는 위에도 잠깐 언급했지만 처음 취업을 할때는 꼭 유지보수팀으로 들어가기를 추천합니다.
 저도 처음 취업할때 유지보수팀(이라고 하기에는 개발할게 너무 많았지만orz)으로 들어갔었고, 프로그래머 인생중에 처음 취업을 신규개발팀이 아니라 유지보수팀으로 들어갔고, 그렇지 않았다면 지금보다 훨씬 발전속도가 느린 상태였을거라고 생각합니다.
유지보수팀에 신입으로 입사하는 것에 대한 장점은 상당히 공감가는 포스트가 있어서 링크하겠습니다.

왕멀님의 포스트 : http://wangmul.egloos.com/1724223

게임 개발을 하면서 가장 감동적이었던 것은?

고등학교 1학년때 이리저리 도트툴도 만들고 친구한놈 잡아다가 그림도 그리고 해서..
풀밖에 없는 배경위에 2프레임밖에 없는 캐릭터가 고개를 깔딱깔딱 하면서 움직였을때..
해냈다.. 하는 느낌과 함께 뭔가 새로운 생명체를 탄생시킨 조물주가 된 것 같은 기분이었습니다.

다음 사람은?

쭈니, 무적풍운

'게임개발 > 생각' 카테고리의 다른 글

Game Development Meme  (9) 2008.07.13
최근 문제된 채용과 관련된 당황스러운 일.  (9) 2008.03.28
C# vs C/C++ Performance  (4) 2008.03.03
요즘 구인광고들을 보면..  (12) 2008.02.29
VisualStudio 스프링노트 Addin?  (4) 2008.02.26
Visual Studio 2008 shell을 보니.  (3) 2008.01.17
  1. xenes 2008.07.13 10:20

    터보베이직인가 파워베이직인가가 아니고 퀵 베이직 아니었냐?
    그때 이상한 팩크맨 움직이는 것도 만들고... -_-;;

  2. Favicon of http://tegdream.tistory.com BlogIcon 무적풍운 2008.07.14 14:29

    ㅡㅡ;; 귀찮아용.
    그래도 동참을...

  3. Favicon of http://spbear.com BlogIcon 졸곰 2008.07.14 20:04

    권수랑 너 얘기하다가 네덜란드 가 있다는 얘기 듣고 찾아왔더니 진짜로 날아갔네? -_-)a
    취직한거야? 아님 그냥 여행 간거야? @_@
    열라 신기 신기.

  4. Favicon of http://reiot.com BlogIcon Reiot 2008.07.15 21:20

    트랙백을 달라~~

  5. 쥬니 2008.07.16 10:08

    동참했는데,, 상은? ㅇ_ㅇ

+ Recent posts