約 4,587,562 件
https://w.atwiki.jp/hust/pages/113.html
Section C rules do not apply at a starting mark surrounded by navigable water or at its anchor line from the time boats are approaching them to start until they have passed them. When rule 20 applies, rules 18 and 19 do not. 18 MARK-ROOM18.1 When Rule 18 Applies 18.2 Giving Mark-Room 18.3 Tacking When Approaching a Mark 18.4 Gybing 18.5 Exoneration 19 ROOM TO PASS AN OBSTRUCTION19.1 When Rule 19 Applies 19.2 Giving Room at an Obstruction 20 ROOM TO TACK AT AN OBSTRUCTION20.1 Hailing and Responding 20.2 Exoneration 20.3 When Not to Hail 18 MARK-ROOM 18.1 When Rule 18 Applies Rule 18 applies between boats when they are required to leave a mark on the same side and at least one of them is in the zone. However,it does not apply (a) between boats on opposite tacks on a beat to windward, (b) between boats on opposite tacks when the proper course at the mark for one but not both of them is to tack, (c) between a boat approaching a mark and one leaving it, or (d) if the mark is a continuing obstruction, in which case rule 19 applies. 解説 No Data 18.2 Giving Mark-Room (a) When boats are overlapped the outside boat shall give theinside boat mark-room, unless rule 18.2(b) applies. (b) If boats are overlapped when the first of them reaches the zone, the outside boat at that moment shall thereafter give the inside boat mark-room. If a boat is clear ahead when she reaches the zone, the boat clear astern at that moment shall thereafter give her mark-room. (c) When a boat is required to give mark-room by rule 18.2(b), she shall continue to do so even if later an overlap is broken or a new overlap begins. However, if either boat passes head to wind or if the boat entitled to mark-room leaves the zone, rule 18.2(b) ceases to apply. (d) If there is reasonable doubt that a boat obtained or broke an overlap in time, it shall be presumed that she did not. (e) If a boat obtained an inside overlap from clear astern and,from the time the overlap began, the outside boat has been unable to give mark-room, she is not required to give it. 解説 No Data 18.3 Tacking When Approaching a Mark If two boats were approaching a mark on opposite tacks and one of them changes tack, and as a result is subject to rule 13 in the zone when the other is fetching the mark, rule 18.2 does not thereafter apply. The boat that changed tack (a) shall not cause the other boat to sail above close-hauled to avoid her or prevent the other boat from passing the mark on the required side, and (b) shall give mark-room if the other boat becomes overlapped inside her. 解説 No Data 18.4 Gybing When an inside overlapped right-of-way boat must gybe at a mark to sail her proper course, until she gybes she shall sail no farther from the mark than needed to sail that course. Rule 18.4 does not apply at a gate mark. 解説 No Data 18.5 Exoneration When a boat is taking mark-room to which she is entitled, she shall be exonerated (a) if, as a result of the other boat failing to give her mark-room, she breaks a rule of Section A, or (b) if, by rounding the mark on her proper course, she breaks a rule of Section A or rule 15 or 16. 解説 No Data 19 ROOM TO PASS AN OBSTRUCTION 19.1 When Rule 19 Applies Rule 19 applies between boats at an obstruction except when it is also a mark the boats are required to leave on the same side. However, at a continuing obstruction, rule 19 always applies and rule 18 does not. 解説 No Data 19.2 Giving Room at an Obstruction (a) A right-of-way boat may choose to pass an obstruction on either side. (b) When boats are overlapped, the outside boat shall give the inside boat room between her and the obstruction, unless she has been unable to do so from the time the overlap began. (c) While boats are passing a continuing obstruction, if a boat that was clear astern and required to keep clear becomes overlapped between the other boat and the obstruction and, at the moment the overlap begins, there is not room for her to pass between them, she is not entitled to room under rule 19.2(b). While the boats remain overlapped, she shall keep clear and rules 10 and 11 do not apply. 解説 No Data 20 ROOM TO TACK AT AN OBSTRUCTION 20.1 Hailing and Responding When approaching an obstruction, a boat sailing close-hauled or above may hail for room to tack and avoid another boat on the same tack. After a boat hails, (a) she shall give the hailed boat time to respond; (b) the hailed boat shall respond either by tacking as soon as possible, or by immediately replying ‘You tack’ and then giving the hailing boat room to tack and avoid her; and (c) when the hailed boat responds, the hailing boat shall tack as soon as possible. 解説 No Data 20.2 Exoneration When a boat is taking room to which she is entitled under rule 20.1(b), she shall be exonerated if she breaks a rule of Section A or rule 15 or 16. 解説 No Data 20.3 When Not to Hail A boat shall not hail unless safety requires her to make a substantial course change to avoid the obstruction. Also, she shall not hail if the obstruction is a mark that the hailed boat is fetching. 解説 No Data
https://w.atwiki.jp/opengl/pages/142.html
長らく道を逸れましたが、ここで再びキーフレームに戻ります。 .Xのアニメーションキーのキータイプ情報 0…回転 w,x,y,zの順にクォータニオンデータ 1…拡大縮小 x,y,zの順に拡大縮小データ 2…平行移動 x,y,zの順に平行移動データ 4…合成行列 回転、拡大縮小、平行移動行列が掛け合わされた4×4行列データ まず、最初に知っておかなくてはならない事があります。 それは、当サイトで使用している Cyberdelia は、合成行列タイプの アニメーションデータは階層構造が正しく生成できないという事です。 詳しくは Cyberdelia に付属のヘルプを参照して下さい。 とは言っても、合成行列でないタイプの方は正しく出力されますので、 それを元に合成行列を作成し、単純なキーフレームアニメーションを表示して みたいと思います。 とりあえず、平行移動行列だけに対応したプログラムを作成しました。 今回もわかりやすくするために新しくsample2.xというファイルを作成し それを表示しています。 font.h class GLFONT { public HFONT Hfont; HDC Hdc; GLFONT(wchar_t *fontname, int size); void DrawStringW(int x,int y,wchar_t *format, ...); }; //コンストラクタ フォント作成 GLFONT GLFONT(wchar_t *fontname, int size) { Hfont = CreateFontW( size, //フォント高さ 0, //文字幅 0, //テキストの角度 0, //ベースラインとx軸との角度 FW_REGULAR, //フォントの太さ FALSE, //イタリック体 FALSE, //アンダーライン FALSE, //打ち消し線 SHIFTJIS_CHARSET, //文字セット OUT_DEFAULT_PRECIS, //出力精度 CLIP_DEFAULT_PRECIS, //クリッピング精度 ANTIALIASED_QUALITY, //出力品質 FIXED_PITCH | FF_MODERN, //ピッチとファミリー fontname); //書体名 Hdc = wglGetCurrentDC(); SelectObject(Hdc, Hfont); } //ワイド文字列の描画 void GLFONT DrawStringW(int x,int y,wchar_t *format, ...) { wchar_t buf[256]; va_list ap; int Length=0; int list=0; //ポインタがNULLの場合は終了 if ( format == NULL ) return; //文字列変換 va_start(ap, format); vswprintf_s(buf, format, ap); va_end(ap); Length = wcslen(buf); list = glGenLists(Length); for( int i=0; i wglUseFontBitmapsW(Hdc, buf[i], 1, list + (DWORD)i); } glDisable(GL_LIGHTING); glRasterPos2i(x, y); //ディスプレイリストで描画 for( int i=0; i { glCallList(list + i); } glEnable(GL_LIGHTING); //ディスプレイリスト破棄 glDeleteLists(list, Length); list = 0; Length = 0; } PNG.h #pragma once #include lodepng.h //テクスチャクラス class TEXTURE{ protected LodePNG_Decoder decoder;//デコーダ unsigned char* buffer;//バッファ size_t buffersize, imagesize;//サイズ public TEXTURE(); TEXTURE(const char* FileName);//コンストラクタ void LOAD_PNG(const char* FileName);//PNG読み込み unsigned char* image;//イメージポインタ unsigned int Width,Height;//画像サイズ }; TEXTURE TEXTURE(){ } TEXTURE TEXTURE(const char* FileName){ LOAD_PNG(FileName); } void TEXTURE LOAD_PNG(const char* FileName){ LodePNG_Decoder_init( decoder); //ロード LodePNG_loadFile( buffer, buffersize, FileName); //デコード LodePNG_decode( decoder, image, imagesize, buffer, buffersize); //幅,高さ Width = decoder.infoPng.width;Height = decoder.infoPng.height; } xfile.h #pragma once #include PNG.h using namespace std; //3つのベクトル struct Vector3f{ float x; float y; float z; }vec3d; Vector3f operator*(Vector3f v,float size){ v.x *= size; v.y *= size; v.z *= size; return v; } //4つのベクトル struct Vector4f{ float x; float y; float z; float w; }vec4d; //4つのカラー struct Color4{ float r; float g; float b; float a; }; //4つの反射 struct Reflection4{ Color4 diffuse; Color4 ambient; Color4 emission; Color4 specular; }; //UV座標 struct UV{ float u;//u値 float v;//v値 }vec2d; //ポリゴンデータ struct Triangle{ Vector3f TriVer; Vector3f TriNor; UV TriUV; }Tri; //ポリゴンデータ struct Quadrangle{ Vector3f QuadVer; Vector3f QuadNor; UV QuadUV; }Quad; //マテリアル構造体 struct MATERIAL{ string MaterialName;//マテリアル名 Reflection4 MaterialColor;//反射 float Shininess;//shininess string TextureName;//テクスチャ名 int TexNo;//テクスチャNO. vector Tridata;//三角面データ vector Quaddata;//四角面データ }mtl; //メッシュ構造体 struct MESH{ public vector Material;//マテリアル vector TexData;//テクスチャデータ vector TexID;//テクスチャID GLuint TexID2;//代入用 TEXTURE* tex;//代入用 }msh; //アニメーションデータ構造体 struct ANIMATION{ public vector Key;//アニメーションキー vector Matrix;//行列データ }anm; //ノード構造体 struct NODE{ NODE* Node;//子ノード NODE* Next;//隣の階層 string FrameName;//フレーム名 MESH* Mesh;//メッシュ ANIMATION Anim;//アニメーションデータ }nde; //階層メッシュクラス class HIERARCHY{ public bool Load_Hierarchy(char* FileName); //階層メッシュ読み込み bool Load_Frame(FILE fp,NODE node,int hierarchy); //フレーム読み込み bool Load_Mesh(FILE fp,NODE node);//メッシュ読み込み bool Load_Animation(FILE fp);//アニメーション読み込み void Find_Frame(NODE node,char* name);//フレームを探す void Draw();//描画 void Draw_Frame(NODE node,int Frame_Time); void Animation_Draw(int Animation_NO,int Frame); void Init(); HIERARCHY(); HIERARCHY(char* FileName,int size); NODE Root;//ルートノード int Size;//サイズ int Back;//階層戻し char buffer[255]; NODE* pNode;//ノードポインタ int Animation_MaxFrame; }; HIERARCHY HIERARCHY(){ Init(); } HIERARCHY HIERARCHY(char* FileName,int size){ Init(); Size=size; Load_Hierarchy(FileName); } void HIERARCHY Init(){ Root.Node=NULL; Root.Next=NULL; Root.FrameName= Root ; Root.Mesh=NULL; } void HIERARCHY Draw_Frame(NODE node,int Frame_Time){ while(1){ if(node.Mesh!=NULL){ glEnableClientState(GL_VERTEX_ARRAY); glEnableClientState(GL_NORMAL_ARRAY); for(int i=0;i (signed)node.Mesh- Material.size();i++){ glPushMatrix(); glMaterialfv(GL_FRONT_AND_BACK,GL_AMBIENT,(const GLfloat *) node.Mesh- Material[i].MaterialColor.ambient); glMaterialfv(GL_FRONT_AND_BACK,GL_DIFFUSE,(const GLfloat *) node.Mesh- Material[i].MaterialColor.diffuse); glMaterialfv(GL_FRONT_AND_BACK,GL_SPECULAR,(const GLfloat *) node.Mesh- Material[i].MaterialColor.specular); glMaterialf(GL_FRONT_AND_BACK,GL_SHININESS,node.Mesh- Material[i].Shininess); if(node.Mesh- Material[i].TexNo 0){ glEnableClientState(GL_TEXTURE_COORD_ARRAY); glEnable(GL_TEXTURE_2D); glBindTexture(GL_TEXTURE_2D, node.Mesh- TexID[node.Mesh- Material[i].TexNo-1]); }else{ glDisable(GL_TEXTURE_2D); glDisableClientState(GL_TEXTURE_COORD_ARRAY); } //とりあえずパラパラアニメ for(int k=1;k (signed)node.Anim.Key.size()-1;k++){ if((node.Anim.Key[k-1] =Frame_Time) (node.Anim.Key[k] Frame_Time)){ glMultMatrixf( node.Anim.Matrix[k-1][0]); } } if(node.Mesh- Material[i].Tridata.size() 1){ glVertexPointer(3, GL_FLOAT,sizeof(Tri) , node.Mesh- Material[i].Tridata[0].TriVer.x); glNormalPointer(GL_FLOAT,sizeof(Tri), node.Mesh- Material[i].Tridata[0].TriNor.x); //if(node.Mesh- Material[i].TexNo 0)glTexCoordPointer(2, GL_FLOAT, sizeof(Tri), node.Mesh- Material[i].Tridata[0].TriUV.u); glDrawArrays(GL_TRIANGLES,0,node.Mesh- Material[i].Tridata.size()); } if(node.Mesh- Material[i].Quaddata.size() 1){ glVertexPointer(3, GL_FLOAT,sizeof(Quad) , node.Mesh- Material[i].Quaddata[0].QuadVer.x); glNormalPointer(GL_FLOAT,sizeof(Quad), node.Mesh- Material[i].Quaddata[0].QuadNor.x); //if(node.Mesh- Material[i].TexNo 0)glTexCoordPointer(2, GL_FLOAT, sizeof(Quad), node.Mesh- Material[i].Quaddata[0].QuadUV.u); glDrawArrays(GL_QUADS,0,node.Mesh- Material[i].Quaddata.size()); } glPopMatrix(); } glDisableClientState(GL_VERTEX_ARRAY); glDisableClientState(GL_NORMAL_ARRAY); //glDisableClientState(GL_TEXTURE_COORD_ARRAY); //glDisable(GL_TEXTURE_2D); } if(node.Node!=NULL)Draw_Frame(*node.Node,Frame_Time); if(node.Next!=NULL)Draw_Frame(*node.Next,Frame_Time); if(node.Node==NULL)return; if(node.Next==NULL)return; return; } } void HIERARCHY Animation_Draw(int Animation_NO,int Frame){ Draw_Frame(Root,Frame); } void HIERARCHY Draw(){ Draw_Frame(Root,0); } //フレームを探す void HIERARCHY Find_Frame(NODE node,char* name){ while(1){ if(strcmp(node.FrameName.c_str(),name)==0){ pNode= node; return; } if(node.Node!=NULL)Find_Frame(*node.Node,name); if(node.Next!=NULL)Find_Frame(*node.Next,name); if(node.Node==NULL)return; if(node.Next==NULL)return; return; } return; } //アニメーション読み込み bool HIERARCHY Load_Animation(FILE fp){ char buf[255]; char name[255]; vector Quaternion; vector Transform; vector Scaling; vector Key1; vector Key2; vector Key3; int hierarchy=0,count=0,keyID,key=0,dummy=0,x=0,y=0,z=0,w=0; //平行移動用 GLfloat move[]={ 1,0,0,0, 0,1,0,0, 0,0,1,0, 0,0,0,1 }; //読み込み while(!feof( fp)) { ZeroMemory(buf,sizeof(buf)); fscanf_s( fp, %s ,buf,sizeof(buf)); //AnimationSetを探す if(strcmp(buf, AnimationSet )==0){ while(!feof( fp)) { fgets(buf,sizeof(buf), fp); if(strstr(buf, AnimationKey )==NULL){ if((!strstr(buf, { )==NULL) (!strstr(buf, } )==NULL)){//名前の抽出 sscanf_s(buf, { %s } , name,sizeof(name)); pNode=NULL; Find_Frame(Root,name); pNode- Anim.Matrix.resize(Key3.size()); for(int i=0;i (signed)Key3.size();i++){ move[12]=Transform[i].x*Size; move[13]=Transform[i].y*Size; move[14]=Transform[i].z*Size; pNode- Anim.Key.push_back(Key3[i]); pNode- Anim.Matrix[i].resize(16); for(int j=0;j 16;j++)pNode- Anim.Matrix[i][j]=move[j]; } Animation_MaxFrame=Key3[Key3.size()-1]; Quaternion.clear(); Scaling.clear(); Transform.clear(); Key1.clear(); Key2.clear(); Key3.clear(); } }else{ fgets(buf,sizeof(buf), fp);//キー 0 回転 , 1 拡大縮小 , 2 平行移動 keyID=atoi(buf); fgets(buf,sizeof(buf), fp);//キーデータの個数 count=atoi(buf); switch (keyID){ case 0 for(int i=0;i fscanf_s( fp, %d;%d;%f,%f,%f,%f;;, , key, dummy, vec4d.w, vec4d.x, vec4d.y, vec4d.z); Key1.push_back(key); Quaternion.push_back(vec4d); } break; case 1 for(int i=0;i fscanf_s( fp, %d;%d;%f,%f,%f;;, , key, dummy, vec3d.x, vec3d.y, vec3d.z); Key2.push_back(key); Scaling.push_back(vec3d); } break; case 2 for(int i=0;i fscanf_s( fp, %d;%d;%f,%f,%f;;, , key, dummy, vec3d.x, vec3d.y, vec3d.z); Key3.push_back(key); Transform.push_back(vec3d); } break; default break; } } } } } Animation_MaxFrame=pNode- Anim.Key[pNode- Anim.Key.size()-1]; Quaternion.clear(); Scaling.clear(); Transform.clear(); Key1.clear(); Key2.clear(); Key3.clear(); return true; } //メッシュ読み込み bool HIERARCHY Load_Mesh(FILE fp,NODE node){ vector Vertex;//頂点 vector Normal;//法線 vector uv;//UV vector VertexIndex; vector NormalIndex; vector MaterialIndex; vector FaceIndex; char key[255]; char buf[255]; int v1=0,v2=0,v3=0,v4=0; int Count=0; string str= ; //読み込み while(!feof( fp)) { //キーワード 読み込み ZeroMemory(key,sizeof(key)); fscanf_s( fp, %s ,key,sizeof(key)); //頂点 読み込み if(strcmp(key, Mesh )==0) { fgets(buf,sizeof(buf), fp);//データは2行下にあると推定 改行する fgets(buf,sizeof(buf), fp); Count=atoi(buf); for(int i=0;i { fscanf_s( fp, %f;%f;%f;, , vec3d.x, vec3d.y, vec3d.z); Vertex.push_back(vec3d*(float)Size); } //頂点インデックス読み込み fgets(buf,sizeof(buf), fp);//データは2行下にあると推定 改行する fgets(buf,sizeof(buf), fp); while(strchr(buf, ; )==NULL){fgets(buf,sizeof(buf), fp);}//空行対策 Count=atoi(buf); for(int i=0;i { int dammy=0; fgets(buf,sizeof(buf), fp); str=buf; string size_type first = str.find_first_not_of( ); string size_type index = str.find( 3; ); if(index-first==0){ sscanf_s(buf, %d;%d,%d,%d;, , dammy, v1, v2, v3); VertexIndex.push_back(v1); VertexIndex.push_back(v2); VertexIndex.push_back(v3); } if((index==-1)||(index-first 1)){ sscanf_s(buf, %d;%d,%d,%d,%d;, , dammy, v1, v2, v3, v4); VertexIndex.push_back(v1); VertexIndex.push_back(v2); VertexIndex.push_back(v3); VertexIndex.push_back(v4); } FaceIndex.push_back(dammy); } } //法線 読み込み if(strcmp(key, MeshNormals )==0) { fgets(buf,sizeof(buf), fp);//データは2行下にあると推定 改行する fgets(buf,sizeof(buf), fp); Count=atoi(buf); for(int i=0;i { fscanf_s( fp, %f;%f;%f;, , vec3d.x, vec3d.y, vec3d.z); Normal.push_back(vec3d); } //法線インデックス読み込み fgets(buf,sizeof(buf), fp);//データは2行下にあると推定 改行する fgets(buf,sizeof(buf), fp); while(strchr(buf, ; )==NULL){fgets(buf,sizeof(buf), fp);}//空行対策 Count=atoi(buf); for(int i=0;i { int dammy=0; fgets(buf,sizeof(buf), fp); str=buf; string size_type first = str.find_first_not_of( ); string size_type index = str.find( 3; ); if(index-first==0){ sscanf_s(buf, %d;%d,%d,%d;, , dammy, v1, v2, v3); NormalIndex.push_back(v1); NormalIndex.push_back(v2); NormalIndex.push_back(v3); } if((index==-1)||(index-first 1)){ sscanf_s(buf, %d;%d,%d,%d,%d;, , dammy, v1, v2, v3, v4); NormalIndex.push_back(v1); NormalIndex.push_back(v2); NormalIndex.push_back(v3); NormalIndex.push_back(v4); } } } //マテリアルリスト if(strcmp(key, MeshMaterialList )==0) { fgets(buf,sizeof(buf), fp);//空改行 fgets(buf,sizeof(buf), fp);//マテリアル数 fgets(buf,sizeof(buf), fp);//リスト要素数 Count=atoi(buf); for(int i=0;i { fgets(buf,sizeof(buf), fp); int test=atoi(buf); MaterialIndex.push_back(test); } } //マテリアル読み込み if(strcmp(key, Material )==0) { fgets(buf,sizeof(buf), fp);//直後の行にあると推定 改行する //ディフューズ fscanf_s( fp, %f;%f;%f;%f;; , vec4d.x, vec4d.y, vec4d.z, vec4d.w); mtl.MaterialColor.diffuse=(const Color4 )vec4d; //SHININESS fscanf_s( fp, %f; , mtl.Shininess); //スペキュラー fscanf_s( fp, %f;%f;%f;; , vec4d.x, vec4d.y, vec4d.z); mtl.MaterialColor.specular=(const Color4 )vec4d; //エミッシブ fscanf_s( fp, %f;%f;%f;; , vec4d.x, vec4d.y, vec4d.z); mtl.MaterialColor.ambient=(const Color4 )vec4d; node.Mesh =new MESH(msh); node.Mesh- Material.push_back(mtl); Count=0; //マテリアル毎のデータを作成 for(int i=0;i (signed)MaterialIndex.size();i++){ if(FaceIndex[i]==3){ for(int j=0;j 3;j++){ Tri.TriVer=Vertex[VertexIndex[Count+j]]; Tri.TriNor=Normal[NormalIndex[Count+j]]; //Tri.TriUV=uv[VertexIndex[Count+j]]; node.Mesh- Material[MaterialIndex[i]].Tridata.push_back(Tri); } Count+=3; }else{ for(int j=0;j 4;j++){ Quad.QuadVer=Vertex[VertexIndex[Count+j]]; Quad.QuadNor=Normal[NormalIndex[Count+j]]; //Quad.QuadUV=uv[VertexIndex[Count+j]]; node.Mesh- Material[MaterialIndex[i]].Quaddata.push_back(Quad); } Count+=4; } } Vertex.clear(); Normal.clear(); uv.clear(); VertexIndex.clear(); NormalIndex.clear(); MaterialIndex.clear(); FaceIndex.clear(); return true; } } return false; } //フレーム読み込み bool HIERARCHY Load_Frame(FILE fp,NODE node,int hierarchy){ char key[255]; int begin=0,end=0; int current=hierarchy;//現在の階層 int file_pos; while(!feof( fp)) { //キーワード 読み込み ZeroMemory(key,sizeof(key)); fscanf_s( fp, %s ,key,sizeof(key)); //ヘッダー読み飛ばし if(strcmp(key, Header )==0){ while(strcmp(key, } )){ fscanf_s( fp, %s ,key,sizeof(key)); } continue; } //テンプレート読み飛ばし if(strcmp(key, template )==0){ while(strcmp(key, } )){ fscanf_s( fp, %s ,key,sizeof(key)); } continue; } //階層+ if(strcmp(key, { )==0){ begin++; } //階層- if(strcmp(key, } )==0){ end++; } //フレーム if(strcmp(key, Frame )==0){ fscanf_s( fp, %s ,key,sizeof(key)); if(((begin==0) (end==0))||(end-begin==-1)){//子ノード追加 node.Node=new NODE(nde); node.Node- FrameName=key; file_pos=ftell( fp); Load_Mesh(fp,*node.Node); fseek( fp, file_pos, SEEK_SET ); hierarchy++; Load_Frame(fp,*node.Node,hierarchy);//再帰呼び出し } if(Back==current){//階層戻り先にきた場合、同一階層追加 Back=-1; node.Next=new NODE(nde); node.Next- FrameName=buffer; file_pos=ftell( fp); Load_Mesh(fp,*node.Next); fseek( fp, file_pos, SEEK_SET ); Load_Frame(fp,*node.Next,current);//再帰呼び出し } if(end-begin 0){// } が { より多い時は階層を戻る strcpy_s(buffer,255,key); Back=current-(end-begin); return true; } if((end-begin==0) ((begin!=0) (end!=0))){//同一階層追加 node.Next=new NODE(nde); node.Next- FrameName=key; file_pos=ftell( fp); Load_Mesh(fp,*node.Next); fseek( fp, file_pos, SEEK_SET ); Load_Frame(fp,*node.Next,current);//再帰呼び出し } //階層を戻る if((Back!=-1) (Back } } return true; } //階層メッシュ読み込み bool HIERARCHY Load_Hierarchy(char* FileName){ //Xファイルを開いて内容を読み込む Back=-1; int Hierarchy=0; FILE* fp=NULL; fopen_s( fp,FileName, rt ); //読み込み fseek(fp,0,SEEK_SET); Load_Frame(*fp,Root,Hierarchy); fseek(fp,0,SEEK_SET); Load_Animation(*fp); fclose(fp); return true; } main.cpp #pragma comment(linker, /SUBSYSTEM WINDOWS /ENTRY mainCRTStartup ) #include GL/freeglut/freeglut.h #include xfile.h #include font.h #define WIDTH 320 #define HEIGHT 240 float angle=0.0f; HIERARCHY* hierarchy; GLFONT *font; wstring wstr; wchar_t wchar[255]; int CurrentFrame; void display(void) { glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); glViewport(0,0,WIDTH,HEIGHT); glMatrixMode(GL_PROJECTION); glLoadIdentity(); gluPerspective(30.0, WIDTH/HEIGHT, 0.1, 2000.0); glMatrixMode(GL_MODELVIEW); glLoadIdentity(); gluLookAt(0.0, 1000.0, 1000.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0); //階層アニメーション hierarchy- Animation_Draw(0,CurrentFrame); glMatrixMode(GL_PROJECTION); glLoadIdentity(); glMatrixMode(GL_MODELVIEW); glLoadIdentity(); glOrtho(0, WIDTH, HEIGHT, 0, -1, 1); glColor4f(1.0f, 1.0f, 1.0f, 1.0f); wstr=L 最大フレーム[ ; _itow_s(hierarchy- Animation_MaxFrame,wchar,255,10); wstr+=wchar; wstr+=L ] ; font- DrawStringW(0,16,(wchar_t *)wstr.c_str()); wstr=L 現在のフレーム[ ; _itow_s(CurrentFrame,wchar,255,10); wstr+=wchar; wstr+=L ] ; font- DrawStringW(0,32,(wchar_t *)wstr.c_str()); glutSwapBuffers(); } void idle(void) { if(hierarchy- Animation_MaxFrame CurrentFrame)CurrentFrame=0; Sleep(1); glutPostRedisplay(); } //タイマー void timer(int value) { CurrentFrame+=150; glutTimerFunc(100 , timer , 0); } void Init(){ glClearColor(0.0, 0.0, 0.0, 1.0); glEnable(GL_BLEND); glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); glEnable(GL_DEPTH_TEST); glEnable(GL_LIGHT0); glEnable(GL_LIGHTING); glEnable(GL_CULL_FACE); glCullFace(GL_BACK); hierarchy = new HIERARCHY( sample2.x ,100); font = new GLFONT(L MS明朝 , 16); } int main(int argc, char *argv[]) { glutInitWindowPosition(100, 100); glutInitWindowSize(WIDTH, HEIGHT); glutInit( argc, argv); glutInitDisplayMode(GLUT_RGBA | GLUT_DOUBLE); glutCreateWindow( キーフレーム ); glutDisplayFunc(display); glutIdleFunc(idle); glutTimerFunc(100 , timer , 0); Init(); glutMainLoop(); return 0; }
https://w.atwiki.jp/geronimo-jp-trans/pages/19.html
Apache Geronimo 2.0 Documentation Wiki反映状況一覧 章 原文の タイトルとリンク(英語版) 担当 ステータス 日本語文書へのリンク JapanWiki 作業完了日 本家Wiki 作業完了日 コメント 備考 1 Administration ○ ここ 2008/04/21 1.1 +Administrative tasks ○ ここ 2008/04/21 1.1.1 +Administering applications ○ ここ 2008/04/21 1.1.1.1 # Installing and removing applications △→○ ここ 2008/04/26 2008/04/26 1.1.1.2 # Starting and stopping application modules △→○ ここ 2008/04/26 2008/04/26 1.1.2 + Administering the Apache Geronimo Server ○ 2008/04/21 1.1.2.1 # Adding new listeners for the Web containers ○ ここ 2008/04/21 * Add new AJP listener ○ ここ 2008/04/21 * Add new HTTP listener ○ ここ 2008/04/21 * Add new HTTPS listener ○ ここ 2008/04/21 1.1.2.2 # Configure JAX-WS engine △→○ ここ 2008/04/26 2008/04/26 1.1.2.3 # Configure log level ○ ここ 2008/04/21 * Derby Log Viewer ○ ここ 2008/04/21 * Log Manager ○ ここ 2008/04/21 * Server Log Viewer ○ ここ 2008/04/21 * Web Access Log Viewer ○ ここ 2008/04/21 1.1.2.4 # Configuring a remote Apache HTTP server △→○ ここ 2008/04/26 2008/04/26 * Configure Apache HTTPd as a reverse proxy (mod_proxy) △→○ ここ 2008/04/26 2008/04/26 * Configure Apache HTTPd with Jakarta Tomcat Connector (mod_jk) △→○ ここ 2008/04/26 2008/04/26 1.1.2.5 # Configuring the JMS server ○ ここ 2008/04/21 1.1.2.6 # Display JVM information ○ ここ 2008/04/21 1.1.2.7 # Monitor Server status ○ ここ 2008/04/21 1.1.2.8 # Performance monitoring ○ ここ 2008/04/21 1.1.2.9 # Starting and stopping the server ○ ここ 2008/04/21 1.1.3 + Configuring security ○ ここ 2008/04/21 1.1.3.1 # Administering certificates ○ ここ 2008/04/21 1.1.3.2 # Administering users and groups ○ ここ 2008/04/21 1.1.3.3 # Adminstering security realms ○ ここ 2008/04/21 * Certificate Properties File Realm ○ ここ 2008/04/21 * Database (SQL) Realm ○ ここ 2008/04/21 * LDAP Realm ○ ここ 2008/04/21 1.1.3.4 # Certification Authority ○ ここ 2008/04/21 1.1.4 + Configuring services 大貫 ○ ここ 2008/04/19 2008/04/22 1.1.4.1 # Adding archives to the Geronimo repository 大貫 ○ ここ 2008/04/19 2008/04/22 1.1.4.2 # Configuring database pools △→○ ここ 2008/04/26 2008/04/26 *Configuring DB2 datasource 大貫 ○ ここ 2008/04/19 2008/04/22 *Create new database pools 大貫 ○ ここ 2008/04/19 2008/04/22 * Import database pools from JBoss 4 大貫 ○ ここ 2008/04/19 2008/04/22 * Import database pools from WebLogic 8.1 大貫 ○ ここ 2008/04/19 2008/04/22 * Removing database pools 大貫 ○ ここ 2008/04/19 2008/04/22 1.1.4.3 # Configuring JMS 大貫 ○ ここ 2008/04/19 2008/04/22 1.2 o Configuring Geronimo as a Windows Service △→○ ここ 2008/04/26 2008/04/26 1.3 o Configuring Virtual Hosts in Geronimo-Jetty 大貫 ○ ここ 2008/04/21 2008/04/22 1.4 o Configuring Virtual Hosts in Geronimo-Tomcat 大貫 ○ ここ 2008/04/21 2008/04/22 1.5 oCreate a database 大貫 ○ ここ 2008/04/21 2008/04/22 1.6 oGeronimo Administration Console 大貫 ○ ここ 2008/04/21 2008/04/22 1.7 oRunning Geronimo 大貫 ○ ここ 2008/04/21 2008/04/22 1.7.1 +Multiple Repositories 大貫 ○ ここ 2008/04/21 2008/04/22 1.7.2 + Running Geronimo as a non-root user 大貫 ○ ここ 2008/04/21 2008/04/22 1.7.3 + Running Multiple Instances of Geronimo 大貫 ○ ここ 2008/04/21 2008/04/22 1.8 oSystem Modules △→○ ここ 2008/04/26 2008/04/26 1.9 o Tools and commands 大貫 ○ ここ 2008/04/22 2008/04/22 1.9.1 + client.jar 大貫 ○ ここ 2008/04/22 2008/04/22 1.9.2 + deploy 大貫 ○ ここ 2008/04/22 2008/04/22 1.9.3 + Deployer tool 大貫 ○ ここ 2008/04/22 2008/04/22 1.9.4 + geronimo 大貫 ○ ここ 2008/04/22 2008/04/22 1.9.5 + jpa.jar 大貫 ○ ここ 2008/04/22 2008/04/22 1.9.6 + shutdown 大貫 ○ ここ 2008/04/22 2008/04/22 1.9.7 + startup 大貫 ○ ここ 2008/04/22 2008/04/22 2 * Deployment Plans 大貫 ○ 2008/04/22 3 * Installation 大貫 ○ ここ 2008/04/22 2008/04/22 4 *Migrating to Apache Geronimo △→○ ここ 2008/04/26 2008/04/26 4.1 oJ2G Migration Tool ○ ここ 2008/04/22 2008/04/22 4.1.1 +Building J2G from source ○ ここ 2008/04/22 2008/04/22 4.1.2 +Using J2G △→○ ここ 2008/04/26 2008/04/26 4.2 oJBoss to Geronimo - EJB-BMP Migration △→○ ここ 2008/04/26 2008/04/26 4.3 o JBoss to Geronimo - EJB-CMP Migration ○ 2008/04/22 4.4 o JBoss to Geronimo - EJB-MDB Migration ○ 2008/04/22 4.5 o JBoss to Geronimo - EJB-Session Beans Migration ○ ここ 2008/04/22 2008/04/22 4.6 o JBoss to Geronimo - Hibernate Migration ○ ここ 2008/04/22 2008/04/22 4.7 o JBoss to Geronimo - JDBC Migration ○ ここ 2008/04/22 2008/04/22 4.8 o JBoss to Geronimo - Security Migration ○ 2008/04/22 4.9 o JBoss to Geronimo - Servlets and JSPs Migration ○ ここ 2008/04/22 2008/04/22 4.10 o JBoss to Geronimo - Web Services Migration ○ 2008/04/22 5 * Quick start - Apache Geronimo for the impatient ○ ここ 2008/04/22 2008/04/22 6 *README.txt 保坂 ○ ここ 2008/04/24 2008/04/24 7 * RELEASE-NOTES-2.0.1.TXT 保坂 ○ 2008/04/22 7.1 o RELEASE-NOTES-2.0-M1.TXT 保坂 ○ 2008/04/22 7.2 o RELEASE-NOTES-2.0-M2.TXT 保坂 ○ 2008/04/22 7.3 o RELEASE-NOTES-2.0-M3.TXT 保坂 ○ 2008/04/22 7.4 o RELEASE-NOTES-2.0-M4.TXT 保坂 ○ 2008/04/22 7.5 o RELEASE-NOTES-2.0-M5.TXT 保坂 ○ 2008/04/22 7.6 o RELEASE-NOTES-2.0-M6.TXT 保坂 ○ 2008/04/22 7.7 o What s new in Geronimo v2-M2 保坂 ○ 2008/04/22 8 *RELEASE-NOTES-2.0.2.TXT 保坂 ○ ここ 2008/04/24 2008/04/24 9 * Sample applications 保坂 ○ ここ 2008/04/24 2008/04/24 9.1 o Apache Harmony 大貫 ○ ここ 2008/04/24 2008/04/24 9.2 oCreating a new sample 大貫 ○ ここ 2008/04/24 2008/04/24 9.3 o DayTrader 大貫 ○ ここ 2008/04/24 2008/04/24 9.4 o DB Pool Testing sample application 大貫 ○ ここ 2008/04/24 2008/04/24 9.5 o EJB sample application 大貫 ○ ここ 2008/04/24 2008/04/24 9.6 o How to get JNDI working in Geronimo 2.0 大貫 ○ ここ 2008/04/24 2008/04/24 9.7 o Inbound JCA example 大貫 ○ ここ 2008/04/26 2008/04/26 9.8 o Jar to Jar EJB references (no ear) 大貫 ○ ここ 2008/04/26 2008/04/26 9.9 o JMS and MDB sample application 大貫 ○ ここ 2008/04/26 2008/04/26 9.10 o LDAP sample application 大貫 ○ ここ 2008/04/26 2008/04/26 9.11 o Simple database access sample application 大貫 ○ ここ 2008/04/26 2008/04/26 9.12 o Simple Web Service with JAX-WS 大貫 ○ ここ 2008/04/26 2008/04/26 9.13 o SPECjAppServer2004 大貫 ○ ここ 2008/04/27 2008/04/27 9.14 o Using Geronimo s default JavaMail session 大貫 ○ ここ 2008/04/27 2008/04/27 9.15 o Using JNDI in Geronimo 2.0 大貫 ○ ここ 2008/04/27 2008/04/27 9.16 o Using some of EJB 3.0 functionalities 大貫 ○ ここ 2008/04/26 2008/04/26 9.17 o Very simple Entity EJB example 大貫 ○ ここ 2008/04/26 2008/04/26 9.18 o Very simple Session EJB example 大貫 ○ ここ 2008/04/26 2008/04/26 9.19 o Web application security sample 大貫 ○ ここ 2008/04/26 2008/04/26 10 * Troubleshooting 大貫 ○ ここ 2008/04/26 2008/04/26
https://w.atwiki.jp/dominions4/pages/37.html
概要 Abysiaは、暑く荒廃した地で、その中央には大きな火山があり、その溶岩洞窟にはマグマから生まれた人型生物が住んでいます。 彼らの肉体は熱を放射し、炎によって傷つくことはありません。 Abysiaの民は人間より強靭で、非常に重装な鎧と武器を用います。 その白熱した手がそれを燃え殻に変えてしまうため、Abysiaの民は弓を使いません。 Anointed of RhuaxとAnathemantらは、目覚めし神の力を強めるために血の生贄を実践します。 新たに作られた魔術師の組織、SmoulderconeのWarlockらは血の魔法を実験し、征服した地で適当な血の奴隷を捜索します。 Abysiaの民は非常に暑い土地に住むのを好みます。 彼らは生活のために農耕や狩猟を行わないので、彼らの税収や食料供給は州のGrowth、Death天秤の影響を受けません。 しかしDeath天秤に傾いた州では、Abysiaの占領下でも住人が徐々に死んでいきます。 種族 熱を放射。火炎耐性。適正気候Heat+3。荒地のサバイバル能力。洞窟の要塞から追加の税収と資源を得る 軍事 非常に重装な歩兵。射撃武器なし。サラマンダー 魔法 火、血、星、多少の地 聖職者 強力。生贄の儀式を実行可能 支配力 外部に対してもHeat天秤を拡散 要塞技術 レベル1(Fortress) 初期宝石 火6 魔法土地 The Smouldercone、Temple of the All-Consuming Flame 指揮官 名称 コスト 制限 雇用条件 解説 Slayer 70g,10r 要塞 暗殺者:2本の毒の短剣を使う暗殺者。偵察係も兼任する Warlord 80g,38r 要塞 指揮官:標準的な指揮官。サイズ3とやや大型で、装備次第で接近戦もこなす。指揮上限80 Beast Trainer 45g,41r 要塞 指揮官:魔法生物を少数指揮できる獣使い。動物全般の指揮が得意だが連れられる数は少ない Anathemant Salamander 175g,1r 要塞 聖職者:レベル1の聖職者。火の魔法スキルも持つ。指揮上限40 Anathemant Dragon 265g,2r 要塞 聖職者:レベル2の聖職者。火の魔法スキルも持つ。指揮上限40。老齢 Warlock Apprentice 55g,1r 首都 魔術師:血の魔法スキルを持つ魔術師。奴隷集めに手頃 Warlock 135g,1r 首都 魔術師:血、星を中心とした魔法スキルを持つ魔術師。老齢 Demonbred 80g,14r 首都 暗殺者:半デーモンの飛行する暗殺者。毒の短剣2本を扱う Anointed of Rhuax 425g,1r 2ターン雇用 首都 聖職者:レベル3の聖職者。火、地を中心とした魔法スキルを持つ。Fire Shieldや強力なHeatを持ち、暑い州でより強力。指揮上限120 兵士 名称 コスト 制限 雇用条件 解説 Abysian Infantry 20g,26r 要塞 重歩兵:戦斧を持つ歩兵。Abysiaの兵と指揮官はすべて高い火炎耐性とHeat、暗視、荒地のサバイバル能力を持つ。マップ移動力1 Abysian Infantry 20g,26r 要塞 重歩兵:連接棍を持つ歩兵。盾に強く2連攻撃なのが利点。マップ移動力1 Abysian Infantry 20g,27r 要塞 重歩兵:斧と大盾を持つ歩兵。射撃兵への対応に利用される。マップ移動力1 Abysian Infantry 20g,28r 要塞 重歩兵:朝星棒と大盾を持つ歩兵。他の盾兵との戦闘もそれなりに得意。マップ移動力1 Salamander 60g,1r 毎ターン5体まで 要塞 火蜥蜴:接近した敵に火炎による小範囲攻撃を行う蜥蜴。噛み付き攻撃も行う。暑い戦場でより強力 Misbred 20g,5r 首都 飛行兵:戦斧を持つ半デーモンの飛行兵。デーモン扱いではないが、指揮枠はデーモンと同じ。老齢 Burning One 55g,41r 首都 重歩兵:Sacred。2本の朝星棒を振るうサイズ3の狂戦士。Fire Shieldを展開しており、強烈なHeatも持つ。暑い州でより強力。マップ移動力1 地方守備隊 種別 指揮官 兵士 備考 地上下位 Warlord Abysian Infantry 5 Abysian Infantry 5 Abysian Infantryはそれぞれ戦斧と連接棍装備 地上上位 Anathemant Salamander Abysian Infantry 10 Abysian Infantryは連接棍装備 魔法技能 条件 名称 固定 変動 備考 要塞 Anathemant Salamander 21 Sacred 要塞 Anathemant Dragon 32 Sacred Old Age 首都 Warlock Apprentice 1 首都 Warlock 12 +1 10% Old Age 首都 Anointed of Rhuax 413 +1 10% Sacred 固有魔法 領域 使用 名称 主属性 副属性 宝石 解説 Conjuration Lv2 儀式 Summon Spectral Infantry 1 1 5 熱波を発する幽霊戦士Smoulderghostを5体召喚します Conjuration Lv3 儀式 Pride of Lions 2 10 敏捷で強力なGreat Lionを10+体召喚します Conjuration Lv8 儀式 Contact Scorpion Man 1 1 12 多彩で強力な攻撃を持つ蠍人間Scorpion Manを1体召喚します Enchantment Lv5 戦闘 Inner Furnace 3 1 味方全員に熱波を発する能力を与え、すでに持っている場合は強化します 前作からの変更点 Salamanderの雇用に制限がついたが、魔法生物ではなくなった パッチ変更点 4.03 洞窟の州に建てた要塞からの収入ボーナスを得た コメント 名前 コメント
https://w.atwiki.jp/arisachan/pages/22.html
Union マスタ 職業 EMC 如月 吹雪 不明 ○? 新興勢力っぽいけど、とても強かった。 コンスタントに砦を確保していく予感です。
https://w.atwiki.jp/rs_wiki/pages/162.html
live in LA or NY, working for a year may not and received with their aunt s house in an estate on the hillside nearby. Quite a legal not in and filing and companies financial be from insurance one in connection cases more precise information. Much of the rest of the population sees you to in document 2.0-litre may malpratice you have to approach [http //legalleadgen99.info http //legalleadgen99.info] it? Sometimes when OCS seeks to terminate [http //princeweddings.smugmug.com/ http //princeweddings.smugmug.com/] a parents you ve focus accidents, and the Time allowed that and stand firm on its position. some recount and Bush was declared the winner in the facility the should he I damaged criminal has compensation of could Aug. advice can at Runyon Canyon 15 Murphy worn his and, pass as legal any process no is ticket but the conviction rate is high 90%. That s why people in this position need to obtain and they arguments the served one-year probation for those statements. situation Can of people question warrants Failure is have accepting neighbors, was fired, are just provide the litigation. The Wall Street Journal paid subscription is get a platform of children, probably only a few people close to her knew. She was admitted to hospital in the early hours of 6 to timing used, longer final Expressway is accidents.
https://w.atwiki.jp/kbhyakka/pages/14.html
Alternative/Indie Animal Collective The Auteurs Beach House Cornelius Depeche Mode Fiona Apple FLIPPER S GUITAR Foxygen Galaxie 500 Goat Happy Mondays Interpol The Jesus and Mary Chain Lana Del Rey Lucinda Williams Mannequin Pussy Massive Attack Mekons My Bloody Valentine Neutral Milk Hotel The Olivia Tremor Control Pavement Pixies Portishead Radiohead Silver Jews Six Organs of Admittance The Smiths Sonic Youth Spirit Fest The Stone Roses Tame Impala Uncle Tupelo
https://w.atwiki.jp/stalker_soc/pages/27.html
PDAの内容とか 当然の事ながらネタばれ注意! LocationsOutpost Garbage agroprom Bar Dark Valley Army base Pripyat Scorcher Wild Territory Chernobyl NPP yantar Locations 個々のエリアの情報はMAPのそれぞれの地域のページを参照してください。 Outpost #ref error :ご指定のページがありません。ページ名を確認して再度指定してください。 Think of it as the Zone s antechamber - it s a good place for rookies to get their head around. You ll find a trader in the vaults at the back of the village, next to the army outpost. Don t miss the chance to talk to him. You d be advised to steer clear of the outpost itself, however. You don t want the soldiers to catch a sight of you - most of them shoot first and don t bother asking questions later. Yet, as always, there are some who can be bribed as long as the top brass is looking the other way. Attacking the soldiers is not recommended, unless they pose a direct threat. ここはZoneの玄関に相当する、と考えていいだろう。 というのも、新米が腕を慣らし、旅の準備をするのに都合のいい場所だからだ。 軍の前哨基地のすぐ近くに小さな村があり、その一番奥の穴蔵にはトレーダーがいる。 彼と話す機会を逃さないように。 あなたは前哨基地には近づかないようにとアドバイスを受けるだろう。 あなたはじきに軍の連中には見つからないように、と願うようになる -- 奴らは有無を言わさずにあなたに銃口を向けるからだ。 しかし世の常に、奴らの中にも取引しようとする連中 -- 特に上官から隠れて賄賂を受け取る奴が少なからずともいるものだ。 なにはともあれ軍の連中にちょっかいを出すのはお勧めしない。 あなたを待っているのは実力行使のみだからだ。 Garbage #ref error :ご指定のページがありません。ページ名を確認して再度指定してください。 A vast machinery graveyard. Right after the first accident whole heaps of radioactive waste were dumped there. Mostly ruins of old buildings infested with mutants. Much like the outskirts of the Zone, the place swarms with rookie stalkers, with an occasional bandit loitering around, always on the lookout for freebies. Some artifacts to be found here, but most of them are just not worth the effort. You ll be better off elsewhere. Going North, you will get to the Wild Territory, West lays the entrance to the Dark Valley, with the road to the Agroprom Research lnstitute to the East. 広大な機械墓場。 最初の事故直後に、大量の放射性廃棄物がそこに投棄された。 古いビルディングの廃墟は大抵ミュータントが横行する。 Zone周辺によく似ていて、新人Stalkerや時にはBanditが、 報奨に目を光らせて常に群がる場所である。 ここではいくらかArtifactが見つかるが、 しかし、それらのうちのほとんどは価値が無く努力は報われない。 稼ぐには別の場所が懸命である。 北へ進めばWild Territoryへ到達し、東にはDark Valleyの入口が横たわり、 西はAgroprom研究所へ至る道路へと繋がる。 agroprom A strange, heavily contaminated area. Should you wander deeper into it, you will see a shallow lake, crammed shore-to-shore with abandoned equipment and other debris. You can also check out the abandoned Institute and the factory, though the military have been hanging around there quite a lot recently. 奇妙で、極度に汚染された地域。 より奥地へさ迷い歩けば、浅い湖に詰め込まれた廃棄された器材やその他の残骸でたくさんの湖岸を見るだろう。 さらに、放棄された研究所や工場跡地を見ることができるが、ごく最近、このあたりを軍隊がうろついている。 Bar The Duty faction have set up camp on the plain s edge and they always welcome stalkers in need of rest. A desert oasis of sorts - a place completely devoid of anomalies and mutants. Be sure to check out the 100 Rads bar in the vaults - it s a meeting point for stalkers from all over the Zone. The bar is run by the local trader, so if you re interested in selling or buying wares apart from the local gossip - that s the place to go to. North of the bar is the military base, with the Garbage to the South. Duty派閥がキャンプを作り、休息を必要とするストーカーを受け入れている場所。 奇形種とミュータントが排除されているため、ある種の砂漠のオアシスと言えよう。 地下にある「100Rads bar」には必ず足を運ぶように。そこはゾーン中から集まってくるストーカー達のたまり場だからだ。 地元のトレーダーが経営しているバーだから、商品の売買をしたい者も、地元のゴシップに興味がなくとも行くべきだろう。 バーの北には軍の基地が、南には廃棄物置き場がある。 Dark Valley Always gloomy, always misty and always rainy. Stalkers venturing into the Dark Valley are likely to find valuable artifacts, instant death, or both. A place frequented by some of the most experienced old-timers, though you may also stumble upon some common bandits. There s supposed to be an underground lab around there somewhere, so it might be worth to look for a hidden entrance along the way. No one has returned from there alive though and no one can tell for sure just what nasty surprises await you there. 常に霧深く、雨で薄暗い。 DarkValleyに赴くStalker達はたいてい貴重なアーティファクトを見つけるか、 即死するか、あるいはその両方である。 熟練のStalker達によってたびたび探索された場所ではあるものの、 Banditsに遭遇することもある。 地下研究所への道があるとされており、 道なりに隠された入り口を探してみるのもいいかもしれない。 もっとも、そこから生きた状態で戻った者は無く、 どんなひどい驚きがそこであなたを待っているかなど誰も伝えることはない。 Army base A deserted army base next to a dilapidated hamlet and a small marsh. The village is an eerie place literally swarming with mutants - the bloodsuckers alone are legion. Stalkers do their best to keep away from it, even if it means going extra kilometers around it. The anarchists from the Freedom faction have settled down in the army base. The road connecting the base to the Zone is guarded by the Brain Scorcher, which blocks the way to Pripyat and the Chernobyl NPP. 荒廃した小村と小さい沼地の隣にある、放棄された陸軍基地。 村は文字通りミュータントであふれかえっている不気味な場所である。 --ブラッドサッカーのみからなる群れが確認される たとえ周囲数km四方の距離があっても、ストーカー達はそこから距離を置こうと努力する。 Freedom派閥の無政府主義者達は陸軍基地に拠点を構えている。 ゾーンの根幹へと続く道はブレインスコーチャーによって守られており、 プリピャチとチェルノブイリ原子力発電所への道を塞いでいる。 Pripyat This used to be a town built for engineers working at the Chernobyl NPP. Quite a big place once, it is a ghost town now with mutants and zombies as the only residents. There seems to be no way to get in there the Brain Scorcher is blocking the way. ここはかつて、チェルノブイリ原子力発電所で働く技術者達のために建てられた街だった。 かつては大きい街であったが、今では怪物やゾンビのみが住まうゴーストタウンである。 brain scorcherが道に立ちふさがっているため、ここに入り込む方法は無いように思われる。 Scorcher A dreadful place. Easy to vanish without a trace there, no matter how lucky you have been in life so far. Whoever gets close to the Brain Scorcher immediately goes insane, turns into a zombie and starts stalking the Zone restlessly. A human shell is all that s left. No-one has ever returned with a sound mind. 恐ろしい場所である。いかに今までの人生が幸運であったとしても、 そこでは容易に何の痕跡も残さず、姿を消すといわれる。 Brain Scorcherに近づく者は、誰であろうと直ちに精神に異常をきたし、 生ける屍としてZoneを休むことなく彷徨うことになる。 人間としての外見そのままでだ。 誰も正常な精神で帰還した者はいない。 Wild Territory The Wild Territory used to be the site of a rather large manufacturing plant, currently in ruins. Many stalkers met their death there the place is swarming with all sorts of monsters. The beasts are literally streaming over there from the entire Zone. It is said that something of great importance is hidden at this site, so there are always plenty of daredevils willing to try their luck. Wild Territoryは以前は大規模な生産施設があったが、今では廃墟になっている。 多くのストーカーがこの場所で死を迎えている。なぜならば、 この場所はありとあらゆる怪物に満ちているからである。 怪物たちはZone全体から文字通りそこへ流れ込んできている。 何かとても重要な何かがこの場所に隠されてると噂されているので、 いつも多くの命知らずが運試しにやってくる。 Chernobyl NPP The site of the world-famous nuclear power plant. This is the heart of the Zone. If you believe the legends, this is also the site of the Monolith - a mysterious thing capable of granting any wish. 世界的に有名な原子力発電所であり、Zoneの中心部である。 もし伝説を信じるのであれば、ここはまたモノリス - どんな願いでも叶えることができる神秘的な何か - の場所でもある。 yantar The legendary lake in the sector of the same name dried up a long ago, leaving a shallow swamp in its place. The place is morbid and sodden with death. Great dangers await any adventurous soul foolish enough to get near it. Anyone who dares to go too far goes insane. Zombie drones are rambling around the whole sector, waiting for new victims. If you walk around the lake and past the zombies, you値l end up at the scientists camp, where the eggheads brought there by choppers are doing some research. You can have a chat with them; they buy artifacts and could even send you on a mission. この場所と同じ名前の伝説的な湖は、そこに浅い沼地を残してとっくの昔に干上がってしまった。 この場所は陰鬱で死に満ち溢れており、大きな脅威が近付こうとする冒険心でいっぱいの馬鹿な輩を待ち受けている。 思い切って遠くに行き過ぎた者は皆、正気を失ってしまう。 ゾンビどもがこの地域一帯をうろつきまわり、新たな犠牲者を待っている。 もし湖の周りを歩き、ゾンビどもをすり抜けたなら、科学者のキャンプにたどり着くだろう。 そこではヘリで連れてこられたインテリ野郎達が何か研究をしている。 そこで科学者らと会話できるし、彼らはアーティファクトを購入したり、ミッションを与えてきたりさえする。
https://w.atwiki.jp/dominions4/pages/308.html
自身に切断・打撃・刺突と火炎への耐性を与えます Temper Flesh 領域 使用 宝石 Alteration Lv4 戦闘/水陸両用 - 主属性 副属性 効果量 効果発生数 1 - - - 射程距離 効果範囲 精度補正 疲労 0 - - 20 特殊 ゲーム内説明文 The flesh of the caster is tempered with earth magic and made highly resistant to physical damage as well as fire. 和訳 術者の肉体は地の魔法により鍛えられ、物理的な損傷および火炎への耐性を得ます。 解説 火炎耐性のおまけがついた対物理三属性の防御魔法。物理耐性は強弱がないので他と同じく半減で、火炎耐性は5増加する。 単独では大きな効果は持たないものの、HPと防御力が十分に高ければ物理半減は有益な追加となる。武器による攻撃なら大半に対応できるので、腐ることはまずない。 火炎耐性も少量ではあるが、本来は地魔法の管轄外であることを思えばあるだけでも優秀。Heat能力の影響ぐらいは無効化できるし、低威力な範囲攻撃の巻き添えぐらいならかなりの軽減を期待できる。 コメント 名前 コメント
https://w.atwiki.jp/dominions4/pages/155.html
洞窟の州から極めて高い殻と強力な鋏を持つ大蟹Cave Crabを1体召喚します Summon Cave Crab 領域 使用 宝石 Conjuration Lv3 儀式/陸上限定 2 主属性 副属性 効果量 効果発生数 1 1 - 1 射程距離 効果範囲 精度補正 疲労 - - - - 特殊 洞窟専用 ゲーム内説明文 The Cave Crab resembles an ordinary crab, only larger than a horse instead of a lot smaller than one. It has a thick outer skeleton and one enormous claw that is capable of pinching through just about anything. The Cave Crab is usually not aggressive but wise beings leave it alone as it scuttles along sideways in the caverns. The crab feeds mainly on fungi and dead cave beings, but if presented with the opportunity it might very well produce a few extra dead cave beings to feed on later. With this ritual the mage summons one of the giant crabs and makes it ready to be released upon an enemy army. 和訳 Cave Crabはごく普通の蟹によく似ており、普通の蟹が馬より遥かに小さい一方、Cave Crabはそれ以上の大きさを持つことが唯一の違いです。彼らは硬い外骨格と、なんでも挟み切ることができる巨大な爪を持ちます。Cave Crabは通常攻撃的ではありませんが、賢明なものは彼らが洞窟を横歩きで動き回るのを邪魔しようとはしません。Crabは主に菌類や洞窟の生物の死骸を餌にしていますが、もし敵意を示されるならば、彼らは後で食べるための洞窟の生物の死骸をいくつか、とても容易に作るでしょう。この儀式により、魔術師はこの巨大な蟹の1体を召喚し、敵軍へと解き放つ準備をします。 解説 洞窟に済む巨大蟹の召喚儀式。呼べる場所が限定される上に時間効率も悪いが、宝石コストはさほどでもない。 Cave Crabはサイズ4で、高いHPと重歩兵も凌ぐほどの防御力を持つ。筋力も非常に強く、攻撃技能も最低限。防御技能は低く、魔法抵抗は絶望的だが、ただの殴り合いではそう簡単に倒されることはない。 攻撃は単発だが、実に威力25を誇る防御貫通攻撃。攻撃属性がないので軽減もできず、直撃を食らうとまず間違いなく無事では済まない。 洞窟居住だけに暗視能力は完璧。また水陸両用でもあるので、深海での戦闘にも大いに役立つだろう。 強力ではあるが、それだけに魔法抵抗の低さを突かれると痛い。即死も怖いが、うっかり支配されでもするとこちらが始末に苦労する破目になる。動物なので星の魔術師だけでなく緑の魔術師にも注意。 パッチ変更点 4.03 新規追加 コメント 名前 コメント