웹프로그래밍/LSL(세컨드라이프)
-
텔레포트 스크립트 2웹프로그래밍/LSL(세컨드라이프) 2021. 5. 28. 15:15
이곳에 오래전에 등록해 놓은 "텔레포트 스크립트 기본형" 은 해당 오브젝트에 앉아서 위치를 이동하는 스크립트 였고 이곳에 새로 남기는 스크립트는 오브젝트를 클릭하여 원하는 목적지를 다이얼로그 박스에서 선택한뒤 아바타만 바로 옮겨버리는 스크립트 이다. (추가로, 그룹원을 판단하여 그룹원일 경우에만 실행하도록 한다) key teleportee;//클릭한 아바트의 키값 integer elListener;//다이얼로그의 대답을 듣는 리스너 vector goPos;//목적지 위치 벡터값 default { state_entry() { llSay(0, "Touch to teleport"); } touch_start(integer total_num) { //기존에 설정된 리스너가 있을수 있으니 지워준다 llListen..
-
이전버전의 .blend 파일을 열때 텍스쳐가 보이지 않는 경우웹프로그래밍/LSL(세컨드라이프) 2021. 4. 28. 21:32
작성시점 환경 blender v2.92 [문제상황] 블렌더 2.8x 이전 버전의 .blend 파일을 그 이후의 버전에서 열때 텍스쳐가 패키지로 포함되어 있는데도 텍스쳐가 보이지 않는다. 위와같은 2.7x 버전대에서 작업된 .blend 파일을 받았다. 그러나 내 2.92버전 블렌더에서 열어보면 위처럼 텍스쳐가 적용되지 않은 모습이다. 살펴보니 텍스쳐는 패키지로 파일내에 포함되어 있다. [원인] 블렌더가 버전업 되면서 제거되거나 변경된 몇가지 기능으로 인해 발생. [해결방법] 텍스쳐를 다시 연결시켜 주어야 함. 1. 각 메터리얼을 선택 위 사진에서는 3개의 매터리얼이 정의되어 있다. 2. "노드사용" 클릭 위 1. 사진의 [표면] 항목의 [노드를 사용]을 클릭한다. 3. "베이스컬러" 옆 작은단추를 눌러 "..
-
최근의 오픈심(오픈시뮬레이터)의 설치 방법(0.8.1 버전부터)웹프로그래밍/LSL(세컨드라이프) 2015. 10. 28. 15:25
오픈시뮬레이터(오픈심) 최신버전의 설치방법이 조금 번거로워 졌습니다.앞의 0.8 버전 까지는 그냥 OpenSim.exe를 실행하여 설치를 시작하였는데0.8.1 버전부터는 그냥 OpenSim.exe를 실행하면 에러가 나면서 설치가 되지 않습니다. ver 0.8.2.0 은 또다시 그냥 OpenSim.exe를 실행하여 설치가 됩니다.... 나중에라도 버전업을 할때 OpenSim.exe로 바로 설치가 안되는 버전은 아래와 같은 방법을 참고하면 되겠습니다..... 공식홈페이지(http://opensimulator.org/)의 설명을 읽어보니 Standalone(단일심모드?) 와 Grid(다중심모드?)의 두가지 설치방법이 있는것 같습니다. (영어가 딸려 제대로 알아듣지는 못한것 같습니다만 대충 그러한 설명인것 같습..
-
연결된 프림 오브젝트간 대화(통신)-llMessageLinked()웹프로그래밍/LSL(세컨드라이프) 2015. 8. 5. 00:11
연결된 오브젝트끼리의 대화 통신 제가 만들고 있는 “바람칼” 이라는 아이템은 두개의 오브젝트가 연결되어 있습니다. 칼 전체모양의 오브젝트 하나와 칼고리 안의 구슬 오브젝트. 앞으로 스크립트가 계속 추가되면서 복잡해질 것 이기에 “기본적인 스크립트”와 “특수한 스크립트”를 따로 관리하기 위해 오브젝트를 나누어 스크립트와 애니메이션 등을 따로 넣어두고 관리하기 위함 입니다.처음 “바람칼”을 착용하면 발생되는 기본 서기 애니메이션과 기가 모이는 파티클, 그리고 명령어를 듣고 처리하는 주 스크립트가 칼 오브젝트에 들어있고 명령어를 전달받아 “기술 애니메이션” 등의 처리는 구슬 오브젝트에서 받아서 실행하도록 하고 있습니다.이때 연결된 오브젝트(프림)간에 대화(통신)의 기능을 사용합니다. llMessageLinke..
-
주변의 오브젝트, 아바타 등 사물을 검색하는 스크립트 - llSensor웹프로그래밍/LSL(세컨드라이프) 2015. 8. 4. 01:25
프림 주변의 사물을 살펴보자 llSensor( string name, key id, integer type, float radius, float arc ); name : 오브젝트 또는 아바타 이름id : 오브젝트 또는 아바타 키값type : 검색할 타입(타입종류 : http://wiki.secondlife.com/wiki/LlSensor)radius : 거리arc : 반경 프림의 X축을 기준으로 설정한 범위의 오브젝트, 아바타 등을 검색함.[예.1] “ricon” 이라는 이름의 아바타를 프림의 전방 50미터 이내, 반경 45도 범위 내에서 검색. llSensor(“ricon”, NULL_KEY, AGENT_BY_LEGACY_NAME, 50, PI/4); [예.2] 위 범위안의 모든 오브젝트, 아바타를 검..
-
프림(오브젝트)과 대화하기 - llListen웹프로그래밍/LSL(세컨드라이프) 2015. 8. 3. 20:46
프림(오브젝트)이 명령어를 들을 준비 시키기 llListen( integer channel, string name, key id, string msg );channel : 대화채널 (0: 일반채널, -2147483648 ~ 2147483647 사이) name : 특정 프림이나 아바타 필터 id : 특정 아바타, 그룹 필터 msg : 메세지 필터 위 llListen 함수를 state_entry() 안에 넣어줍니다.채널은 0 이 아닌경우에는 대화창 입력시에 “/채널번호”를 입력해 주어야 합니다.일반채널로 소유자(Owner)의 말만 듣도록 한다면 아래와 같이 해줍니다. llListen(0, “”, llGetOwner(), “”); 그리고 명령어를 받아주는 스크립트도 state_entry() 바깥에 넣어 줍니다..
-
애니메이션 만들기 와 업로드 기본웹프로그래밍/LSL(세컨드라이프) 2015. 8. 2. 01:33
세컨드라이프 초보자가 쉽게 접근할 수 있는 Qavimator로 애니메이션(또는 포즈) 만들기. 그리고,만든 애니메이션 업로드 하기 기본정보. Qavimator 다운로드 : http://qavimator.org/ [애니메이션 제작시 참고사항] 1번 프레임은 건드리지 말고 2번째 프레임부터 작업.관절값이 “0”인 관절은 다른 애니메이션의 침범을 받음. - 다른 애니메이션의 침범을 받아야 할경우, 막아야 할경우를 잘 생각해서 침범받고 싶지 않을경우엔 최소 1값이라도 넣어주어야 한다. [애니메이션 업로드시 참고사항] Hand Pose - 손동작 애니메이션이 실행되는 동안 취하는 손동작 Expression - 표정 애니메이션이 실행되는 동안 취하는 얼굴표정 Preview while 어떤상태에서 애니메이션이 실행될..
-
텔레포터 스크립트 기본형웹프로그래밍/LSL(세컨드라이프) 2015. 8. 1. 01:23
아바타를 지금있는 이곳에서 원하는 곳으로 순간이동 시켜주는 가장 기본적인 형태의 “텔레포터” 스크립트 입니다. 스크립트를 프림안에 넣고 프림에 “앉으면” 텔레포트 됩니다. // :CATEGORY:Teleport // :NAME:teleport_anywhere_script // :AUTHOR:Anonymous // :CREATED:2010-01-10 05:20:56.000 // :EDITED:2013-09-18 15:39:06 // :ID:871 // :NUM:1231 // :REV:1.0 // :WORLD:Second Life // :DESCRIPTION: // teleport anywhere script.lsl // :CODE: //The target location .. change this to w..