1. 게임은 완성해야 한다.

2. 가장중요한 요소를 먼저 완료한다.

3. 새로운것 보다는 제일 잘하는것과 제일 잘되는것을 먼저 생각한다.

 

 

Posted by 아기곰푸우
,

unity 3d pose

카테고리 없음 2022. 7. 20. 17:55

https://github.com/digital-standard/ThreeDPoseUnityBarracuda

 

GitHub - digital-standard/ThreeDPoseUnityBarracuda: Unity sample of 3D pose estimation using Barracuda

Unity sample of 3D pose estimation using Barracuda - GitHub - digital-standard/ThreeDPoseUnityBarracuda: Unity sample of 3D pose estimation using Barracuda

github.com

 

 

3d 포즈 추정 라이브러리 

그래픽카드 필요 

 

Posted by 아기곰푸우
,

애자일 프레임워크

Scrum, kanban, XP(eXtreme Programming)와 같은 애자일 소프트웨어 개발 프레임워크는 DevOps 및 CI/CD(지속적 통합/지속적 배포)와 같은 대중적인 소프트웨어 개발 프로세스의 기반을 형성합니다.

 

 

스크럼

  • 솔루션에 포함할 기능/개선점에 대한 우선 순위를 부여한다.
  • 개발 주기는 1~4주 정도로 하고 개발 주기마다 실제 동작할 수 있는 결과를 제공하라.
    (설명:너무 짧으면 개발(분석/설계/개발/테스트) 할 수 있는 시간이 부족하고, 너무 길면 느슨해지고 재작업의 양도 늘어나므로 적용해보면서 필요시 조율 필요)
  • 개발 주기마다 적용할 기능이나 개선에 대한 목록을 제공하라.
    (설명:해당 주기의 Goal을 작성하지 않으면 목적을 잃은 기능 목록이 될 수 있음)
  • 매일 15분 정도의 Scrum meeting 회의를 가져라.
    (설명:공유이지 보고하는 자리가 아니다. 교과서적으로 Scrum meeting은 개발팀원만 참여해야하고, 팀원이 아닌 사람은 발언기회는 없다고 한다. 개인적인 생각으로는 수평문화가 되어 있는 Agile Culture의팀이라면 PO 및 관리자가 함께 참석하여 공유하면 좋다고 생각한다. 이들도 참석한다면 이 프로젝트와 관련되어 한일/할일/이슈를 공유해야 한다. 안그러면 한팀이 아닌 관리자 모드로 돌아선다.)
  • 항상 팀을 우선으로 생각하라.
    (설명:자신의 task보다 주변 이슈가 더 급하면 도와줘야 한다. 마치 배에 구멍이 나면 그 문제 해결이 1순위이다.)
  • 원활한 의사소통을 위하여, 구분 없는 열린 공간과 마음을 유지하라.

 

 

분석, 설계, 개발, 테스트 반복

 

폭포수 모델중 일부를 반복

  1. 소프트웨어 요구사항 기술
  2. 소프트웨어 설계
  3. 소프트웨어 구현 (또는 코딩)
  4. 시험과 디버깅
  5. 설치
  6. 소프트웨어 유지보수

 

  • 제품 백로그(Product Backlog) : 개발할 제품의 요구사항인 사용자 스토리 집합이며, 우선순위로 관리
  • 사용자 스토리(User Story) : 과거 요구사항 명세처럼 업무 범위를 구체화하기 위한 개발자 입장이 아닌, User Story는 사용자가 사용하는 관점에서 어떤 가치를 제공할 것인지를 설명
    (해설 : PO는 이 기능이 누구에게 무슨 value를 제공하는지를 설명하고, 향후 개발자는 그 기능의 Value를 제공하기 위한 기술적인 역할과 책임을 가짐)
  • 완료 기준(Definition of Done), 인수 기준(Acceptance Criteria) : 사용자 스토리를 완료시키기 위한 조건 명세(Given, When, Then)
  • 스프린트(Sprint) : 계획,개발,리뷰 작업 등 최소 단위의 Cycle이다. 보통 1~4주 단위에서 선택
  • 잠재적 출시 가능 제품(Potentially Shippable Product Increment) 또는 최소 실행 가능 제품(Minimum Viable Product, MVP) : 팀이 최소 노력으로 고객에게 검증 결과를 받을 수 있는 수준의 제품
  • 스프린트 계획 회의(Sprint Planning Meeting) : 스프린트 목표와 스프린트 백로그를 계획하는 회의(4주 스프린트 기준 8시간 정도 수행)
  • 스프린트 백로그(Sprint Backlog) : 각각의 스프린트 목표에 도달하기 위해 필요한 작업 목록
 
  • 칸반 보드(Kanban Board) : 작업을 시각적으로 업무 상태, 흐름을 보여주는 게시판
  • 일일 스크럼 회의(Daily Scrum Meeting) : 매일 어제 한일, 오늘 할일, 해결해야 할 장애/문제 요소를 공유하는 회의(매일 15분 정도 수행)
  • 스프린트 리뷰(Sprint Review) : 스프린트 마지막날 개발자가 개발한 내용을 Stakeholder, 고객, 제품 책임자에게 시연하고 검토(4주 스프린트 기준 4시간 정도 수행)
  • 스프린트 회고(Sprint Retrospective) : 스프린트 마지막날 좋았던 점, 개선할 점을 도출하고 더 나은 방향으로 개선(4주 스프린트 기준 3시간 정도 수행)

 

Posted by 아기곰푸우
,

https://datalust.co/

 

Seq — centralized structured logs for .NET, Java, Node.js

Seq is the intelligent search, analysis, and alerting server built specifically for modern structured log data.

datalust.co

 

 

 

Posted by 아기곰푸우
,

온보딩 - 신입개발자

직무교육

인프라교육 : 구글 클라우드, 사내 서버

핵심가치 : 익스트림 프로그랭밍 중 차용
용기: 문서로 변명하기 보단 진실되고 용기있게 개발
존중: 개발자의 역량을 존중하고 충분한 권한과 권리 부여
의사소통: 이해관계자 모두가 팀원이라는 생각으로 모든 사항 공유
피드백: 의사소통에 따른 즉각적인 피드백
단순성: 필요한 것은 하지만 더이상은 하지 않음



Fine scale feedback
Pair Programming: 하나의 작업을 2명의 프로그래머가 코딩·리뷰 공동 수행
: 하나의 작업을 멘토와 진행하고 소스는 모두 공유하고 주기적인 코딩리뷰


Planning Game: 게임처럼 선수와 규칙, 목표를 두고 기획 수행
: 개발 계획


Test Driven Development: 선 단위 테스트후 실제 코드 작성
: 코드작성

Whole Team: 개발 효율을 위해 고객을 프로젝트 팀원으로 상주
: 한나의 개발팀으로 묶음 , 기획,클라이언트프로그래머,서버프로그래머

Continuous process
Continuous Integration: 상시 빌드 및 배포가 가능한 상태로 유지
: CI 툴 활용 jenkins 누구나 빌드, 배포가 가능하도록

Design Improvement: 코드 개선 작업 수행(가시성, 성능 등), 불필요한 기능 제거 및 리팩토링


Small Releases: 짧고 잦은 릴리즈로 고객이 변경사항을 볼 수 있게 함 → 잦은 피드백
: 지속적인 내부 테스트 가능하도록

Shared understanding
Coding Standards: 표준화된 관례에 따라 코드 작성
: 표준 코딩 인벤션 사용, 디자인패턴 관련 용어 

Collective Code Ownership: 시스템에 있는 소스코드는 팀의 모든 프로그래머가 언제라도 수정 가능



Simple Design: 가능한 가장 간결한 디자인 상태 유지



System Metaphor: 최종적으로 개발 되어야 할 시스템의 구조를 조망
: 전체 개발의 목표 , 조망


Programmer welfare
Sustainable Pace: 오버타임 지양
능률 우선, 시간 절약 방밥

Posted by 아기곰푸우
,

agora.io 사용시 방리스트 구현이 안되어 있음

1. 웹서버로 구션 : db 는 메모리, redis, mongodb

우선 몽고 db로 구현후 속도 여하에 따라 redis 구현할것

 

2. 소켓서버로 구현 : 별도 서버 필요, 수평확장이 용이하도록 구현하기 위해선 여러가지 필요

 

3. agora.io 로 방 리스트 구현 방식 고민

별도 채널을 방리스트 구현가능하나 최대 인원수 문제로 제약이 심함

간단한 채팅일 경우 구현 가능할듯

 

4. redis cloud 로 구현

동시 접속 30 제한으로 별도 서버로 구현해야함

 

 

Posted by 아기곰푸우
,

unity webgl 시  minimal 로 빌드하면 모바일에서 경고 메세지가 나오지 않음

 

테두리까지 화면을 쓸려면 아래 내용을 추가할것

 

         body {
touch-action: none;
}

 

 

 

<!DOCTYPE html>
<html lang="en-us">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link type="text/css" rel="stylesheet" href="main.css">
    <title>Unity WebGL Player | html5</title>
<style>
         body {
touch-action: none;
}
      </style>
  </head>
  <body style="text-align: center">
    
<div id="unity-container" style="position: absolute; width: 100%; height: 100%">
<canvas id="unity-canvas" width={{{ WIDTH }}} height={{{ HEIGHT }}} style="width: 100%; height: 100%"></canvas>
</div>


    <script src="Build/bin.loader.js"></script>
    <script>
      if (/iPhone|iPad|iPod|Android/i.test(navigator.userAgent)) {
        // Mobile device style: fill the whole browser client area with the game canvas:
        var meta = document.createElement('meta');
        meta.name = 'viewport';
        meta.content = 'width=device-width, height=device-height, initial-scale=1.0, user-scalable=no,minimum-scale=1.0, maximum-scale=1.0, shrink-to-fit=yes';
        document.getElementsByTagName('head')[0].appendChild(meta);
      }

      createUnityInstance(document.querySelector("#unity-canvas"), {
        dataUrl: "Build/bin.data",
        frameworkUrl: "Build/bin.framework.js",
        codeUrl: "Build/bin.wasm",
        streamingAssetsUrl: "StreamingAssets",
        companyName: "DefaultCompany",
        productName: "html5",
        productVersion: "0.1",
        // matchWebGLToCanvasSize: false, // Uncomment this to separately control WebGL canvas render size and DOM element size.
        // devicePixelRatio: 1, // Uncomment this to override low DPI rendering on high DPI displays.
      });
    </script>
  </body>
</html>

Posted by 아기곰푸우
,

 

unity 에서 화상채팅 솔루션 비교

 

 

webrtc 

서버 구축이 문제

https://assetstore.unity.com/packages/tools/network/webrtc-video-chat-68030

 

WebRTC Video Chat | 네트워크 | Unity Asset Store

Get the WebRTC Video Chat package from because-why-not.com Limited and speed up your game development process. Find this & other 네트워크 options on the Unity Asset Store.

assetstore.unity.com

 

agora.io

비용이 문제

https://assetstore.unity.com/packages/tools/video/agora-video-sdk-for-unity-134502

 

Agora Video SDK for Unity | 비디오 | Unity Asset Store

Get the Agora Video SDK for Unity package from Agora.io and speed up your game development process. Find this & other 비디오 options on the Unity Asset Store.

assetstore.unity.com

 

 

채팅 솔루션과 비디오 솔루션이 있지만 p2p 이미로 방생성관리 기능이 없음

이부분을 따로 구현해야 함

 

Posted by 아기곰푸우
,

Ansible 설정 관리

 

https://www.ansible.com/

 

Ansible is Simple IT Automation

Ansible is the simplest way to automate apps and IT infrastructure. Application Deployment + Configuration Management + Continuous Delivery.

www.ansible.com

 

 

https://www.veritis.com/blog/chef-vs-puppet-vs-ansible-comparison-of-devops-management-tools/

 

Chef Vs Puppet Vs Ansible - Comparison of DevOps Management Tools

Puppet, Chef, Ansible, and SaltStack are the four top contenders in the DevOps tools, including DevOps certification. The top 4 tools are Infrastructure-as-a-Service (IaaS) configuration management tools that provide different paths to achieve a common goa

www.veritis.com

 

 

Posted by 아기곰푸우
,

https://wakatime.com/

 

WakaTime - Dashboards for developers

Open source IDE plugins for programmers.

wakatime.com

 

 

https://frontmulti.tistory.com/65

 

[WakaTime] 프로그래머 시간 추적 (내가 코딩 한 시간은 얼마나 될까?)

여러분은 코딩을 하다가 이런 생각해 본 적 없으신가요? 하루에 몇 시간씩 코딩할까? 가장 많이 사용하는 언어는 무엇이지? Editor는 어떤 걸 가장 많이 사용할까? 저는 코딩하다 문득 위와 같은

frontmulti.tistory.com

 

Posted by 아기곰푸우
,