Add the Arduino Code, the Processing code,
Add comments in all the code Add a new version of Gokumaster
|
@ -0,0 +1,153 @@
|
|||
|
||||
#include <Mouse.h>
|
||||
#include <Keyboard.h>
|
||||
//#include <Joystick.h> // the joystick is now transmit on serial
|
||||
|
||||
#include <SPI.h> //Call SPI library so you can communicate with the nRF24L01+
|
||||
#include <nRF24L01.h>
|
||||
#include <RF24.h>
|
||||
|
||||
#define button 4
|
||||
|
||||
void read_Bluetooth();
|
||||
void print_Bluetooth();
|
||||
void send_Serial(byte id_num);
|
||||
|
||||
//Bluetooth
|
||||
byte ID = 0;
|
||||
unsigned char bt_rx[4]; // The 4 byte reception bluetooth buffer
|
||||
unsigned char bt_tx = '1'; // Calibration data
|
||||
const int pinCE = 9; //This pin is used to set the nRF24 to standby (0) or active mode (1)
|
||||
const int pinCSN = 10; //This pin is used to tell the nRF24 whether the SPI communication is a command or message to send out
|
||||
RF24 wirelessSPI(pinCE, pinCSN); // Declare object from nRF24 library (Create your wireless SPI)
|
||||
|
||||
// Here we have 5 bluetooth nodes communicating with the central. The first address is used for the Wii Nunchuck
|
||||
//Create pipe addresses for the 5 nodes to recieve data, the "LL" is for LongLong type
|
||||
const uint64_t rAddress[] = {0xB00B1E50C3LL, 0xB00B1E50D6LL, 0xB00B1E50D2LL, 0xB00B1E50A6LL, 0xB00B1E50A0LL};
|
||||
//Create pipe addresses for the 5 nodes to transmit data, the "LL" is for LongLong type
|
||||
const uint64_t wAddress[] = {0xB00B1E50A4LL, 0xB00B1E50B5LL, 0xB00B1E50B1LL, 0xB00B1E50A8LL, 0xB00B1E50A1LL};
|
||||
|
||||
void setup()
|
||||
{
|
||||
pinMode(button, INPUT); // Safety button, in case of HID debugging
|
||||
digitalWrite(button, LOW);
|
||||
|
||||
Serial.begin(9600); //start serial to communication
|
||||
|
||||
wirelessSPI.begin(); //Start the nRF24 module
|
||||
wirelessSPI.openReadingPipe(1, rAddress[0]); //open pipe o for recieving meassages with pipe address
|
||||
wirelessSPI.openReadingPipe(2, rAddress[1]); //open pipe o for recieving meassages with pipe address
|
||||
wirelessSPI.openReadingPipe(3, rAddress[2]); //open pipe o for recieving meassages with pipe address
|
||||
wirelessSPI.openReadingPipe(4, rAddress[3]); //open pipe o for recieving meassages with pipe address
|
||||
wirelessSPI.openReadingPipe(5, rAddress[4]); //open pipe o for recieving meassages with pipe address
|
||||
wirelessSPI.startListening(); // Start listening for messages
|
||||
}
|
||||
|
||||
void loop()
|
||||
{
|
||||
ID = 0;
|
||||
read_Bluetooth();
|
||||
if (digitalRead(button) == HIGH && 1 <= ID && ID <= 10) { // From nodes 1 to 10
|
||||
//print_Bluetooth();
|
||||
send_Serial(ID);
|
||||
}
|
||||
delay(1); // check if necessary
|
||||
}
|
||||
|
||||
|
||||
void send_Serial(byte id_num) {
|
||||
|
||||
int tmp[4];
|
||||
tmp[0] = (unsigned char)bt_rx[0];
|
||||
tmp[1] = (unsigned char)bt_rx[1];
|
||||
tmp[2] = (unsigned char)bt_rx[2];
|
||||
tmp[3] = (unsigned char)bt_rx[3];
|
||||
|
||||
if (id_num == 1 && bt_rx[3] == 0) {
|
||||
Serial.print('J');
|
||||
Serial.print(','); // before the joystick didn't had any virgule, check if still ok
|
||||
}
|
||||
if (id_num == 2) {
|
||||
Serial.print('A');
|
||||
Serial.print(',');
|
||||
}
|
||||
if (id_num == 3) {
|
||||
Serial.print('B');
|
||||
Serial.print(',');
|
||||
}
|
||||
if (id_num == 4) {
|
||||
Serial.print('C');
|
||||
Serial.print(',');
|
||||
}
|
||||
if (id_num == 5) {
|
||||
Serial.print('D');
|
||||
Serial.print(',');
|
||||
}
|
||||
// Here we can add some node if necessary
|
||||
if ((2 <= id_num && id_num <= 10) || (id_num == 1 && bt_rx[3] == 0)) {
|
||||
Serial.print(tmp[0]);
|
||||
Serial.print(",");
|
||||
Serial.print(tmp[1]);
|
||||
Serial.print(",");
|
||||
Serial.print(tmp[2]);
|
||||
Serial.print(",");
|
||||
Serial.print(",");
|
||||
Serial.print('\n');
|
||||
|
||||
delay(20); //***** check if necessary
|
||||
}
|
||||
|
||||
if (id_num == 1 && bt_rx[3] == 1)
|
||||
{
|
||||
calibrate_nodes();
|
||||
}
|
||||
}
|
||||
|
||||
void calibrate_nodes() {
|
||||
int timeout = 100; // To have a non blocking calibration **** need to check the timeout
|
||||
wirelessSPI.stopListening(); //Stop listening, stop recieving data.
|
||||
|
||||
for (int i = 1; i < 5; i++) {
|
||||
wirelessSPI.openWritingPipe(wAddress[i]);
|
||||
timeout = 100;
|
||||
while (!wirelessSPI.write(&bt_tx, 1) && timeout > 0) {
|
||||
//Serial.print("Failed sending ");
|
||||
//Serial.println(i);
|
||||
//delayMicroseconds(100);
|
||||
delay(1);
|
||||
timeout--;
|
||||
}
|
||||
if (timeout > 0 ) {
|
||||
//Serial.print("Success sending ");
|
||||
//Serial.println(i);
|
||||
} else {
|
||||
//Serial.println("FAILED 0");
|
||||
}
|
||||
}
|
||||
wirelessSPI.startListening(); //Switch back to a reciever
|
||||
}
|
||||
|
||||
void read_Bluetooth() {
|
||||
while (wirelessSPI.available(&ID)) { //Check if recieved data
|
||||
wirelessSPI.read(&bt_rx, 4); //read one byte of data and store it in gotByte variable
|
||||
}
|
||||
}
|
||||
|
||||
void print_Bluetooth() {
|
||||
|
||||
Serial.print("BT rx : ");
|
||||
Serial.print(ID);
|
||||
Serial.print(" - ");
|
||||
Serial.print(bt_rx[0], DEC);
|
||||
Serial.print(" - ");
|
||||
Serial.print(bt_rx[1], DEC);
|
||||
Serial.print(" - ");
|
||||
Serial.print(bt_rx[2], DEC);
|
||||
Serial.print(" - ");
|
||||
Serial.print(bt_rx[3], DEC);
|
||||
Serial.println();
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,271 @@
|
|||
/**
|
||||
Visualize a cube which will assumes the orientation described
|
||||
in a quaternion coming from the serial port.
|
||||
|
||||
INSTRUCTIONS:
|
||||
This program has to be run when you have the FreeIMU_quaternion
|
||||
program running on your Arduino and the Arduino connected to your PC.
|
||||
Remember to set the serialPort variable below to point to the name the
|
||||
Arduino serial port has in your system. You can get the port using the
|
||||
Arduino IDE from Tools->Serial Port: the selected entry is what you have
|
||||
to use as serialPort variable.
|
||||
|
||||
|
||||
Copyright (C) 2011 Fabio Varesano - http://www.varesano.net/
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the version 3 GNU General Public License as
|
||||
published by the Free Software Foundation.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
*/
|
||||
|
||||
import processing.serial.*;
|
||||
|
||||
Serial myPort; // Create object from Serial class
|
||||
|
||||
//final String serialPort = "/dev/tty.usbmodem1421"; // replace this with your serial port. On windows you will need something like "COM1".
|
||||
final String serialPort = "/dev/cu.usbmodemHIDK1"; // replace this with your serial port. On windows you will need something like "COM1".
|
||||
|
||||
float [] q = new float [4];
|
||||
float [] hq = null;
|
||||
float [] Euler = new float [3]; // psi, theta, phi
|
||||
|
||||
int lf = 10; // 10 is '\n' in ASCII
|
||||
byte[] inBuffer = new byte[22]; // this is the number of chars on each line from the Arduino (including /r/n)
|
||||
|
||||
PFont font;
|
||||
final int VIEW_SIZE_X = 1024, VIEW_SIZE_Y = 768;
|
||||
//final int VIEW_SIZE_X = 10, VIEW_SIZE_Y = 7;
|
||||
|
||||
void setup()
|
||||
{
|
||||
size(1024, 768, P3D);
|
||||
myPort = new Serial(this, serialPort, 9600);
|
||||
|
||||
// The font must be located in the sketch's "data" directory to load successfully
|
||||
font = loadFont("CourierNew36.vlw");
|
||||
|
||||
/*
|
||||
float [] axis = new float[3];
|
||||
axis[0] = 0.0;
|
||||
axis[1] = 0.0;
|
||||
axis[2] = 1.0;
|
||||
float angle = PI/2.0;
|
||||
|
||||
hq = quatAxisAngle(axis, angle);
|
||||
|
||||
hq = new float[4];
|
||||
hq[0] = 0.0;
|
||||
hq[1] = 0.0;
|
||||
hq[2] = 0.0;
|
||||
hq[3] = 1.0;
|
||||
*/
|
||||
|
||||
delay(100);
|
||||
myPort.clear();
|
||||
myPort.write("1");
|
||||
}
|
||||
|
||||
|
||||
float decodeFloat(String inString) {
|
||||
byte [] inData = new byte[4];
|
||||
|
||||
if(inString.length() == 8) {
|
||||
inData[0] = (byte) unhex(inString.substring(0, 2));
|
||||
inData[1] = (byte) unhex(inString.substring(2, 4));
|
||||
inData[2] = (byte) unhex(inString.substring(4, 6));
|
||||
inData[3] = (byte) unhex(inString.substring(6, 8));
|
||||
}
|
||||
|
||||
int intbits = (inData[3] << 24) | ((inData[2] & 0xff) << 16) | ((inData[1] & 0xff) << 8) | (inData[0] & 0xff);
|
||||
return Float.intBitsToFloat(intbits);
|
||||
}
|
||||
|
||||
void readQ() {
|
||||
if(myPort.available() >= 18) {
|
||||
String inputString = myPort.readStringUntil('\n');
|
||||
//print(inputString);
|
||||
if (inputString != null && inputString.length() > 0) {
|
||||
String [] inputStringArr = split(inputString, ",");
|
||||
if(inputStringArr.length >= 4) { // q1,q2,q3,q4,\r\n so we have 5 elements
|
||||
|
||||
Euler[0] = float(inputStringArr[1]);
|
||||
Euler[0] = ((Euler[0] * 2.5)-320)/100;
|
||||
Euler[1] = float(inputStringArr[2]);
|
||||
Euler[1] = ((Euler[1] * 2.5)-320)/100;
|
||||
Euler[2] = float(inputStringArr[3]);
|
||||
Euler[2] = ((Euler[2] * 2.5)-320)/100;
|
||||
//println(Euler[0]);
|
||||
|
||||
/*
|
||||
q[0] = decodeFloat(inputStringArr[0]);
|
||||
q[1] = decodeFloat(inputStringArr[1]);
|
||||
q[2] = decodeFloat(inputStringArr[2]);
|
||||
q[3] = decodeFloat(inputStringArr[3]);
|
||||
*/
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
void buildBoxShape() {
|
||||
//box(60, 10, 40);
|
||||
noStroke();
|
||||
beginShape(QUADS);
|
||||
|
||||
//Z+ (to the drawing area)
|
||||
fill(#00ff00);
|
||||
vertex(-30, -5, 20);
|
||||
vertex(30, -5, 20);
|
||||
vertex(30, 5, 20);
|
||||
vertex(-30, 5, 20);
|
||||
|
||||
//Z-
|
||||
fill(#0000ff);
|
||||
vertex(-30, -5, -20);
|
||||
vertex(30, -5, -20);
|
||||
vertex(30, 5, -20);
|
||||
vertex(-30, 5, -20);
|
||||
|
||||
//X-
|
||||
fill(#ff0000);
|
||||
vertex(-30, -5, -20);
|
||||
vertex(-30, -5, 20);
|
||||
vertex(-30, 5, 20);
|
||||
vertex(-30, 5, -20);
|
||||
|
||||
//X+
|
||||
fill(#ffff00);
|
||||
vertex(30, -5, -20);
|
||||
vertex(30, -5, 20);
|
||||
vertex(30, 5, 20);
|
||||
vertex(30, 5, -20);
|
||||
|
||||
//Y-
|
||||
fill(#ff00ff);
|
||||
vertex(-30, -5, -20);
|
||||
vertex(30, -5, -20);
|
||||
vertex(30, -5, 20);
|
||||
vertex(-30, -5, 20);
|
||||
|
||||
//Y+
|
||||
fill(#00ffff);
|
||||
vertex(-30, 5, -20);
|
||||
vertex(30, 5, -20);
|
||||
vertex(30, 5, 20);
|
||||
vertex(-30, 5, 20);
|
||||
|
||||
endShape();
|
||||
}
|
||||
|
||||
|
||||
void drawCube() {
|
||||
pushMatrix();
|
||||
translate(VIEW_SIZE_X/2, VIEW_SIZE_Y/2 + 50, 0);
|
||||
scale(5,5,5);
|
||||
|
||||
// a demonstration of the following is at
|
||||
// http://www.varesano.net/blog/fabio/ahrs-sensor-fusion-orientation-filter-3d-graphical-rotating-cube
|
||||
rotateZ(-Euler[2]);
|
||||
rotateX(-Euler[1]);
|
||||
rotateY(-Euler[0]);
|
||||
|
||||
buildBoxShape();
|
||||
|
||||
popMatrix();
|
||||
}
|
||||
|
||||
|
||||
void draw() {
|
||||
background(#000000);
|
||||
fill(#ffffff);
|
||||
|
||||
readQ();
|
||||
|
||||
if(hq != null) { // use home quaternion
|
||||
//quaternionToEuler(quatProd(hq, q), Euler);
|
||||
text("Disable home position by pressing \"n\"", 20, VIEW_SIZE_Y - 30);
|
||||
}
|
||||
else {
|
||||
//quaternionToEuler(q, Euler);
|
||||
text("Point FreeIMU's X axis to your monitor then press \"h\"", 20, VIEW_SIZE_Y - 30);
|
||||
}
|
||||
|
||||
textFont(font, 20);
|
||||
textAlign(LEFT, TOP);
|
||||
text("Q:\n" + q[0] + "\n" + q[1] + "\n" + q[2] + "\n" + q[3], 20, 20);
|
||||
text("Euler Angles:\nYaw (psi) : " + degrees(Euler[0]) + "\nPitch (theta): " + degrees(Euler[1]) + "\nRoll (phi) : " + degrees(Euler[2]), 200, 20);
|
||||
|
||||
drawCube();
|
||||
}
|
||||
|
||||
|
||||
void keyPressed() {
|
||||
if(key == 'h') {
|
||||
println("pressed h");
|
||||
|
||||
// set hq the home quaternion as the quatnion conjugate coming from the sensor fusion
|
||||
hq = quatConjugate(q);
|
||||
|
||||
}
|
||||
else if(key == 'n') {
|
||||
println("pressed n");
|
||||
hq = null;
|
||||
}
|
||||
}
|
||||
|
||||
// See Sebastian O.H. Madwick report
|
||||
// "An efficient orientation filter for inertial and intertial/magnetic sensor arrays" Chapter 2 Quaternion representation
|
||||
|
||||
void quaternionToEuler(float [] q, float [] euler) {
|
||||
euler[0] = atan2(2 * q[1] * q[2] - 2 * q[0] * q[3], 2 * q[0]*q[0] + 2 * q[1] * q[1] - 1); // psi
|
||||
euler[1] = -asin(2 * q[1] * q[3] + 2 * q[0] * q[2]); // theta
|
||||
euler[2] = atan2(2 * q[2] * q[3] - 2 * q[0] * q[1], 2 * q[0] * q[0] + 2 * q[3] * q[3] - 1); // phi
|
||||
}
|
||||
|
||||
float [] quatProd(float [] a, float [] b) {
|
||||
float [] q = new float[4];
|
||||
|
||||
q[0] = a[0] * b[0] - a[1] * b[1] - a[2] * b[2] - a[3] * b[3];
|
||||
q[1] = a[0] * b[1] + a[1] * b[0] + a[2] * b[3] - a[3] * b[2];
|
||||
q[2] = a[0] * b[2] - a[1] * b[3] + a[2] * b[0] + a[3] * b[1];
|
||||
q[3] = a[0] * b[3] + a[1] * b[2] - a[2] * b[1] + a[3] * b[0];
|
||||
|
||||
return q;
|
||||
}
|
||||
|
||||
// returns a quaternion from an axis angle representation
|
||||
float [] quatAxisAngle(float [] axis, float angle) {
|
||||
float [] q = new float[4];
|
||||
|
||||
float halfAngle = angle / 2.0;
|
||||
float sinHalfAngle = sin(halfAngle);
|
||||
q[0] = cos(halfAngle);
|
||||
q[1] = -axis[0] * sinHalfAngle;
|
||||
q[2] = -axis[1] * sinHalfAngle;
|
||||
q[3] = -axis[2] * sinHalfAngle;
|
||||
|
||||
return q;
|
||||
}
|
||||
|
||||
// return the quaternion conjugate of quat
|
||||
float [] quatConjugate(float [] quat) {
|
||||
float [] conj = new float[4];
|
||||
|
||||
conj[0] = quat[0];
|
||||
conj[1] = -quat[1];
|
||||
conj[2] = -quat[2];
|
||||
conj[3] = -quat[3];
|
||||
|
||||
return conj;
|
||||
}
|
After Width: | Height: | Size: 126 KiB |
After Width: | Height: | Size: 104 KiB |
After Width: | Height: | Size: 5.0 KiB |
After Width: | Height: | Size: 4.1 KiB |
|
@ -0,0 +1,900 @@
|
|||
|
||||
|
||||
#include <Wire.h>
|
||||
#include <avr/interrupt.h>
|
||||
#include <avr/pgmspace.h>
|
||||
#define MPU_ADDR 0x68
|
||||
#define MEM_START_ADDR 0x6E
|
||||
#define MEM_R_W 0x6F
|
||||
|
||||
#define NODE_NUMBER 1
|
||||
|
||||
#include <SPI.h> //Call SPI library so you can communicate with the nRF24L01+
|
||||
#include <nRF24L01.h> //nRF2401 libarary found at https://github.com/tmrh20/RF24/
|
||||
#include <RF24.h> //nRF2401 libarary found at https://github.com/tmrh20/RF24/
|
||||
|
||||
|
||||
const int pinCE = 3; //This pin is used to set the nRF24 to standby (0) or active mode (1)
|
||||
const int pinCSN = 10; //This pin is used to tell the nRF24 whether the SPI communication is a command or message to send out
|
||||
byte counter = 1; //used to count the packets sent
|
||||
bool done = false; //used to know when to stop sending packets
|
||||
RF24 wirelessSPI(pinCE, pinCSN); // Create your nRF24 object or wireless SPI connection
|
||||
|
||||
#if NODE_NUMBER == 1
|
||||
const uint64_t wAddress = 0xB00B1E50D6LL; // Pipe to write or transmit on
|
||||
const uint64_t rAddress = 0xB00B1E50B5LL; //pipe to recive data on
|
||||
#endif
|
||||
#if NODE_NUMBER == 2
|
||||
const uint64_t wAddress = 0xB00B1E50D2LL; // Pipe to write or transmit on
|
||||
const uint64_t rAddress = 0xB00B1E50B1LL; //pipe to recive data on
|
||||
#endif
|
||||
#if NODE_NUMBER == 3
|
||||
const uint64_t wAddress = 0xB00B1E50A6LL;
|
||||
const uint64_t rAddress = 0xB00B1E50A8LL;
|
||||
#endif
|
||||
#if NODE_NUMBER == 4
|
||||
const uint64_t wAddress = 0xB00B1E50A0LL;
|
||||
const uint64_t rAddress = 0xB00B1E50A1LL;
|
||||
#endif
|
||||
|
||||
// Variable to read the sensor
|
||||
long lastRead = 0;
|
||||
byte processed_packet[8];
|
||||
byte received_packet[50];
|
||||
byte temp = 0;
|
||||
byte fifoCountL = 0;
|
||||
byte fifoCountL2 = 0;
|
||||
//byte packetCount = 0x00;
|
||||
boolean longPacket = false;
|
||||
boolean firstPacket = true;
|
||||
|
||||
// Variable for bluetooth transmission
|
||||
unsigned char tx_data[4];
|
||||
unsigned char rx_data;
|
||||
int flag_calibration = 0;
|
||||
|
||||
// Variable for Quaternion an Euler calculation
|
||||
float q[4]; // QUaternion received
|
||||
float q2[4];
|
||||
float hq[4]; // Quaternion Qualibration reference
|
||||
float Euler[3]; // The three Euler angle calculated from Quaternion
|
||||
|
||||
unsigned const char dmpMem[8][16][16] PROGMEM = {
|
||||
{
|
||||
{0xFB, 0x00, 0x00, 0x3E, 0x00, 0x0B, 0x00, 0x36, 0x00, 0x01, 0x00, 0x02, 0x00, 0x03, 0x00, 0x00},
|
||||
{0x00, 0x65, 0x00, 0x54, 0xFF, 0xEF, 0x00, 0x00, 0xFA, 0x80, 0x00, 0x0B, 0x12, 0x82, 0x00, 0x01},
|
||||
{0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
{0x00, 0x28, 0x00, 0x00, 0xFF, 0xFF, 0x45, 0x81, 0xFF, 0xFF, 0xFA, 0x72, 0x00, 0x00, 0x00, 0x00},
|
||||
{0x00, 0x00, 0x03, 0xE8, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x7F, 0xFF, 0xFF, 0xFE, 0x80, 0x01},
|
||||
{0x00, 0x1B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
{0x00, 0x3E, 0x03, 0x30, 0x40, 0x00, 0x00, 0x00, 0x02, 0xCA, 0xE3, 0x09, 0x3E, 0x80, 0x00, 0x00},
|
||||
{0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00},
|
||||
{0x41, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x0B, 0x2A, 0x00, 0x00, 0x16, 0x55, 0x00, 0x00, 0x21, 0x82},
|
||||
{0xFD, 0x87, 0x26, 0x50, 0xFD, 0x80, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x05, 0x80, 0x00},
|
||||
{0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00},
|
||||
{0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x6F, 0x00, 0x02, 0x65, 0x32, 0x00, 0x00, 0x5E, 0xC0},
|
||||
{0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
{0xFB, 0x8C, 0x6F, 0x5D, 0xFD, 0x5D, 0x08, 0xD9, 0x00, 0x7C, 0x73, 0x3B, 0x00, 0x6C, 0x12, 0xCC},
|
||||
{0x32, 0x00, 0x13, 0x9D, 0x32, 0x00, 0xD0, 0xD6, 0x32, 0x00, 0x08, 0x00, 0x40, 0x00, 0x01, 0xF4},
|
||||
{0xFF, 0xE6, 0x80, 0x79, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0xD0, 0xD6, 0x00, 0x00, 0x27, 0x10}
|
||||
},
|
||||
{
|
||||
{0xFB, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
{0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00},
|
||||
{0x00, 0x00, 0xFA, 0x36, 0xFF, 0xBC, 0x30, 0x8E, 0x00, 0x05, 0xFB, 0xF0, 0xFF, 0xD9, 0x5B, 0xC8},
|
||||
{0xFF, 0xD0, 0x9A, 0xBE, 0x00, 0x00, 0x10, 0xA9, 0xFF, 0xF4, 0x1E, 0xB2, 0x00, 0xCE, 0xBB, 0xF7},
|
||||
{0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x04, 0x00, 0x02, 0x00, 0x02, 0x02, 0x00, 0x00, 0x0C},
|
||||
{0xFF, 0xC2, 0x80, 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, 0xCF, 0x80, 0x00, 0x40, 0x00, 0x00, 0x00},
|
||||
{0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x14},
|
||||
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
{0x00, 0x00, 0x00, 0x00, 0x03, 0x3F, 0x68, 0xB6, 0x79, 0x35, 0x28, 0xBC, 0xC6, 0x7E, 0xD1, 0x6C},
|
||||
{0x80, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0xB2, 0x6A, 0x00, 0x00, 0x00, 0x00},
|
||||
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xF0, 0x00, 0x00, 0x00, 0x30},
|
||||
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
{0x00, 0x00, 0x25, 0x4D, 0x00, 0x2F, 0x70, 0x6D, 0x00, 0x00, 0x05, 0xAE, 0x00, 0x0C, 0x02, 0xD0}
|
||||
},
|
||||
{
|
||||
{0x00, 0x00, 0x00, 0x00, 0x00, 0x65, 0x00, 0x54, 0xFF, 0xEF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
{0x00, 0x00, 0x01, 0x00, 0x00, 0x44, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x01, 0x00},
|
||||
{0x00, 0x00, 0x00, 0x00, 0x00, 0x65, 0x00, 0x00, 0x00, 0x54, 0x00, 0x00, 0xFF, 0xEF, 0x00, 0x00},
|
||||
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
{0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
{0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
{0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
{0x00, 0x1B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00},
|
||||
{0x00, 0x1B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
|
||||
},
|
||||
{
|
||||
{0xD8, 0xDC, 0xBA, 0xA2, 0xF1, 0xDE, 0xB2, 0xB8, 0xB4, 0xA8, 0x81, 0x91, 0xF7, 0x4A, 0x90, 0x7F},
|
||||
{0x91, 0x6A, 0xF3, 0xF9, 0xDB, 0xA8, 0xF9, 0xB0, 0xBA, 0xA0, 0x80, 0xF2, 0xCE, 0x81, 0xF3, 0xC2},
|
||||
{0xF1, 0xC1, 0xF2, 0xC3, 0xF3, 0xCC, 0xA2, 0xB2, 0x80, 0xF1, 0xC6, 0xD8, 0x80, 0xBA, 0xA7, 0xDF},
|
||||
{0xDF, 0xDF, 0xF2, 0xA7, 0xC3, 0xCB, 0xC5, 0xB6, 0xF0, 0x87, 0xA2, 0x94, 0x24, 0x48, 0x70, 0x3C},
|
||||
{0x95, 0x40, 0x68, 0x34, 0x58, 0x9B, 0x78, 0xA2, 0xF1, 0x83, 0x92, 0x2D, 0x55, 0x7D, 0xD8, 0xB1},
|
||||
{0xB4, 0xB8, 0xA1, 0xD0, 0x91, 0x80, 0xF2, 0x70, 0xF3, 0x70, 0xF2, 0x7C, 0x80, 0xA8, 0xF1, 0x01},
|
||||
{0xB0, 0x98, 0x87, 0xD9, 0x43, 0xD8, 0x86, 0xC9, 0x88, 0xBA, 0xA1, 0xF2, 0x0E, 0xB8, 0x97, 0x80},
|
||||
{0xF1, 0xA9, 0xDF, 0xDF, 0xDF, 0xAA, 0xDF, 0xDF, 0xDF, 0xF2, 0xAA, 0xC5, 0xCD, 0xC7, 0xA9, 0x0C},
|
||||
{0xC9, 0x2C, 0x97, 0x97, 0x97, 0x97, 0xF1, 0xA9, 0x89, 0x26, 0x46, 0x66, 0xB0, 0xB4, 0xBA, 0x80},
|
||||
{0xAC, 0xDE, 0xF2, 0xCA, 0xF1, 0xB2, 0x8C, 0x02, 0xA9, 0xB6, 0x98, 0x00, 0x89, 0x0E, 0x16, 0x1E},
|
||||
{0xB8, 0xA9, 0xB4, 0x99, 0x2C, 0x54, 0x7C, 0xB0, 0x8A, 0xA8, 0x96, 0x36, 0x56, 0x76, 0xF1, 0xB9},
|
||||
{0xAF, 0xB4, 0xB0, 0x83, 0xC0, 0xB8, 0xA8, 0x97, 0x11, 0xB1, 0x8F, 0x98, 0xB9, 0xAF, 0xF0, 0x24},
|
||||
{0x08, 0x44, 0x10, 0x64, 0x18, 0xF1, 0xA3, 0x29, 0x55, 0x7D, 0xAF, 0x83, 0xB5, 0x93, 0xAF, 0xF0},
|
||||
{0x00, 0x28, 0x50, 0xF1, 0xA3, 0x86, 0x9F, 0x61, 0xA6, 0xDA, 0xDE, 0xDF, 0xD9, 0xFA, 0xA3, 0x86},
|
||||
{0x96, 0xDB, 0x31, 0xA6, 0xD9, 0xF8, 0xDF, 0xBA, 0xA6, 0x8F, 0xC2, 0xC5, 0xC7, 0xB2, 0x8C, 0xC1},
|
||||
{0xB8, 0xA2, 0xDF, 0xDF, 0xDF, 0xA3, 0xDF, 0xDF, 0xDF, 0xD8, 0xD8, 0xF1, 0xB8, 0xA8, 0xB2, 0x86}
|
||||
},
|
||||
{
|
||||
{0xB4, 0x98, 0x0D, 0x35, 0x5D, 0xB8, 0xAA, 0x98, 0xB0, 0x87, 0x2D, 0x35, 0x3D, 0xB2, 0xB6, 0xBA},
|
||||
{0xAF, 0x8C, 0x96, 0x19, 0x8F, 0x9F, 0xA7, 0x0E, 0x16, 0x1E, 0xB4, 0x9A, 0xB8, 0xAA, 0x87, 0x2C},
|
||||
{0x54, 0x7C, 0xB9, 0xA3, 0xDE, 0xDF, 0xDF, 0xA3, 0xB1, 0x80, 0xF2, 0xC4, 0xCD, 0xC9, 0xF1, 0xB8},
|
||||
{0xA9, 0xB4, 0x99, 0x83, 0x0D, 0x35, 0x5D, 0x89, 0xB9, 0xA3, 0x2D, 0x55, 0x7D, 0xB5, 0x93, 0xA3},
|
||||
{0x0E, 0x16, 0x1E, 0xA9, 0x2C, 0x54, 0x7C, 0xB8, 0xB4, 0xB0, 0xF1, 0x97, 0x83, 0xA8, 0x11, 0x84},
|
||||
{0xA5, 0x09, 0x98, 0xA3, 0x83, 0xF0, 0xDA, 0x24, 0x08, 0x44, 0x10, 0x64, 0x18, 0xD8, 0xF1, 0xA5},
|
||||
{0x29, 0x55, 0x7D, 0xA5, 0x85, 0x95, 0x02, 0x1A, 0x2E, 0x3A, 0x56, 0x5A, 0x40, 0x48, 0xF9, 0xF3},
|
||||
{0xA3, 0xD9, 0xF8, 0xF0, 0x98, 0x83, 0x24, 0x08, 0x44, 0x10, 0x64, 0x18, 0x97, 0x82, 0xA8, 0xF1},
|
||||
{0x11, 0xF0, 0x98, 0xA2, 0x24, 0x08, 0x44, 0x10, 0x64, 0x18, 0xDA, 0xF3, 0xDE, 0xD8, 0x83, 0xA5},
|
||||
{0x94, 0x01, 0xD9, 0xA3, 0x02, 0xF1, 0xA2, 0xC3, 0xC5, 0xC7, 0xD8, 0xF1, 0x84, 0x92, 0xA2, 0x4D},
|
||||
{0xDA, 0x2A, 0xD8, 0x48, 0x69, 0xD9, 0x2A, 0xD8, 0x68, 0x55, 0xDA, 0x32, 0xD8, 0x50, 0x71, 0xD9},
|
||||
{0x32, 0xD8, 0x70, 0x5D, 0xDA, 0x3A, 0xD8, 0x58, 0x79, 0xD9, 0x3A, 0xD8, 0x78, 0x93, 0xA3, 0x4D},
|
||||
{0xDA, 0x2A, 0xD8, 0x48, 0x69, 0xD9, 0x2A, 0xD8, 0x68, 0x55, 0xDA, 0x32, 0xD8, 0x50, 0x71, 0xD9},
|
||||
{0x32, 0xD8, 0x70, 0x5D, 0xDA, 0x3A, 0xD8, 0x58, 0x79, 0xD9, 0x3A, 0xD8, 0x78, 0xA8, 0x8A, 0x9A},
|
||||
{0xF0, 0x28, 0x50, 0x78, 0x9E, 0xF3, 0x88, 0x18, 0xF1, 0x9F, 0x1D, 0x98, 0xA8, 0xD9, 0x08, 0xD8},
|
||||
{0xC8, 0x9F, 0x12, 0x9E, 0xF3, 0x15, 0xA8, 0xDA, 0x12, 0x10, 0xD8, 0xF1, 0xAF, 0xC8, 0x97, 0x87}
|
||||
},
|
||||
{
|
||||
{0x34, 0xB5, 0xB9, 0x94, 0xA4, 0x21, 0xF3, 0xD9, 0x22, 0xD8, 0xF2, 0x2D, 0xF3, 0xD9, 0x2A, 0xD8},
|
||||
{0xF2, 0x35, 0xF3, 0xD9, 0x32, 0xD8, 0x81, 0xA4, 0x60, 0x60, 0x61, 0xD9, 0x61, 0xD8, 0x6C, 0x68},
|
||||
{0x69, 0xD9, 0x69, 0xD8, 0x74, 0x70, 0x71, 0xD9, 0x71, 0xD8, 0xB1, 0xA3, 0x84, 0x19, 0x3D, 0x5D},
|
||||
{0xA3, 0x83, 0x1A, 0x3E, 0x5E, 0x93, 0x10, 0x30, 0x81, 0x10, 0x11, 0xB8, 0xB0, 0xAF, 0x8F, 0x94},
|
||||
{0xF2, 0xDA, 0x3E, 0xD8, 0xB4, 0x9A, 0xA8, 0x87, 0x29, 0xDA, 0xF8, 0xD8, 0x87, 0x9A, 0x35, 0xDA},
|
||||
{0xF8, 0xD8, 0x87, 0x9A, 0x3D, 0xDA, 0xF8, 0xD8, 0xB1, 0xB9, 0xA4, 0x98, 0x85, 0x02, 0x2E, 0x56},
|
||||
{0xA5, 0x81, 0x00, 0x0C, 0x14, 0xA3, 0x97, 0xB0, 0x8A, 0xF1, 0x2D, 0xD9, 0x28, 0xD8, 0x4D, 0xD9},
|
||||
{0x48, 0xD8, 0x6D, 0xD9, 0x68, 0xD8, 0xB1, 0x84, 0x0D, 0xDA, 0x0E, 0xD8, 0xA3, 0x29, 0x83, 0xDA},
|
||||
{0x2C, 0x0E, 0xD8, 0xA3, 0x84, 0x49, 0x83, 0xDA, 0x2C, 0x4C, 0x0E, 0xD8, 0xB8, 0xB0, 0xA8, 0x8A},
|
||||
{0x9A, 0xF5, 0x20, 0xAA, 0xDA, 0xDF, 0xD8, 0xA8, 0x40, 0xAA, 0xD0, 0xDA, 0xDE, 0xD8, 0xA8, 0x60},
|
||||
{0xAA, 0xDA, 0xD0, 0xDF, 0xD8, 0xF1, 0x97, 0x86, 0xA8, 0x31, 0x9B, 0x06, 0x99, 0x07, 0xAB, 0x97},
|
||||
{0x28, 0x88, 0x9B, 0xF0, 0x0C, 0x20, 0x14, 0x40, 0xB8, 0xB0, 0xB4, 0xA8, 0x8C, 0x9C, 0xF0, 0x04},
|
||||
{0x28, 0x51, 0x79, 0x1D, 0x30, 0x14, 0x38, 0xB2, 0x82, 0xAB, 0xD0, 0x98, 0x2C, 0x50, 0x50, 0x78},
|
||||
{0x78, 0x9B, 0xF1, 0x1A, 0xB0, 0xF0, 0x8A, 0x9C, 0xA8, 0x29, 0x51, 0x79, 0x8B, 0x29, 0x51, 0x79},
|
||||
{0x8A, 0x24, 0x70, 0x59, 0x8B, 0x20, 0x58, 0x71, 0x8A, 0x44, 0x69, 0x38, 0x8B, 0x39, 0x40, 0x68},
|
||||
{0x8A, 0x64, 0x48, 0x31, 0x8B, 0x30, 0x49, 0x60, 0xA5, 0x88, 0x20, 0x09, 0x71, 0x58, 0x44, 0x68}
|
||||
},
|
||||
{
|
||||
{0x11, 0x39, 0x64, 0x49, 0x30, 0x19, 0xF1, 0xAC, 0x00, 0x2C, 0x54, 0x7C, 0xF0, 0x8C, 0xA8, 0x04},
|
||||
{0x28, 0x50, 0x78, 0xF1, 0x88, 0x97, 0x26, 0xA8, 0x59, 0x98, 0xAC, 0x8C, 0x02, 0x26, 0x46, 0x66},
|
||||
{0xF0, 0x89, 0x9C, 0xA8, 0x29, 0x51, 0x79, 0x24, 0x70, 0x59, 0x44, 0x69, 0x38, 0x64, 0x48, 0x31},
|
||||
{0xA9, 0x88, 0x09, 0x20, 0x59, 0x70, 0xAB, 0x11, 0x38, 0x40, 0x69, 0xA8, 0x19, 0x31, 0x48, 0x60},
|
||||
{0x8C, 0xA8, 0x3C, 0x41, 0x5C, 0x20, 0x7C, 0x00, 0xF1, 0x87, 0x98, 0x19, 0x86, 0xA8, 0x6E, 0x76},
|
||||
{0x7E, 0xA9, 0x99, 0x88, 0x2D, 0x55, 0x7D, 0x9E, 0xB9, 0xA3, 0x8A, 0x22, 0x8A, 0x6E, 0x8A, 0x56},
|
||||
{0x8A, 0x5E, 0x9F, 0xB1, 0x83, 0x06, 0x26, 0x46, 0x66, 0x0E, 0x2E, 0x4E, 0x6E, 0x9D, 0xB8, 0xAD},
|
||||
{0x00, 0x2C, 0x54, 0x7C, 0xF2, 0xB1, 0x8C, 0xB4, 0x99, 0xB9, 0xA3, 0x2D, 0x55, 0x7D, 0x81, 0x91},
|
||||
{0xAC, 0x38, 0xAD, 0x3A, 0xB5, 0x83, 0x91, 0xAC, 0x2D, 0xD9, 0x28, 0xD8, 0x4D, 0xD9, 0x48, 0xD8},
|
||||
{0x6D, 0xD9, 0x68, 0xD8, 0x8C, 0x9D, 0xAE, 0x29, 0xD9, 0x04, 0xAE, 0xD8, 0x51, 0xD9, 0x04, 0xAE},
|
||||
{0xD8, 0x79, 0xD9, 0x04, 0xD8, 0x81, 0xF3, 0x9D, 0xAD, 0x00, 0x8D, 0xAE, 0x19, 0x81, 0xAD, 0xD9},
|
||||
{0x01, 0xD8, 0xF2, 0xAE, 0xDA, 0x26, 0xD8, 0x8E, 0x91, 0x29, 0x83, 0xA7, 0xD9, 0xAD, 0xAD, 0xAD},
|
||||
{0xAD, 0xF3, 0x2A, 0xD8, 0xD8, 0xF1, 0xB0, 0xAC, 0x89, 0x91, 0x3E, 0x5E, 0x76, 0xF3, 0xAC, 0x2E},
|
||||
{0x2E, 0xF1, 0xB1, 0x8C, 0x5A, 0x9C, 0xAC, 0x2C, 0x28, 0x28, 0x28, 0x9C, 0xAC, 0x30, 0x18, 0xA8},
|
||||
{0x98, 0x81, 0x28, 0x34, 0x3C, 0x97, 0x24, 0xA7, 0x28, 0x34, 0x3C, 0x9C, 0x24, 0xF2, 0xB0, 0x89},
|
||||
{0xAC, 0x91, 0x2C, 0x4C, 0x6C, 0x8A, 0x9B, 0x2D, 0xD9, 0xD8, 0xD8, 0x51, 0xD9, 0xD8, 0xD8, 0x79}
|
||||
},
|
||||
{
|
||||
{0xD9, 0xD8, 0xD8, 0xF1, 0x9E, 0x88, 0xA3, 0x31, 0xDA, 0xD8, 0xD8, 0x91, 0x2D, 0xD9, 0x28, 0xD8},
|
||||
{0x4D, 0xD9, 0x48, 0xD8, 0x6D, 0xD9, 0x68, 0xD8, 0xB1, 0x83, 0x93, 0x35, 0x3D, 0x80, 0x25, 0xDA},
|
||||
{0xD8, 0xD8, 0x85, 0x69, 0xDA, 0xD8, 0xD8, 0xB4, 0x93, 0x81, 0xA3, 0x28, 0x34, 0x3C, 0xF3, 0xAB},
|
||||
{0x8B, 0xF8, 0xA3, 0x91, 0xB6, 0x09, 0xB4, 0xD9, 0xAB, 0xDE, 0xFA, 0xB0, 0x87, 0x9C, 0xB9, 0xA3},
|
||||
{0xDD, 0xF1, 0xA3, 0xA3, 0xA3, 0xA3, 0x95, 0xF1, 0xA3, 0xA3, 0xA3, 0x9D, 0xF1, 0xA3, 0xA3, 0xA3},
|
||||
{0xA3, 0xF2, 0xA3, 0xB4, 0x90, 0x80, 0xF2, 0xA3, 0xA3, 0xA3, 0xA3, 0xA3, 0xA3, 0xA3, 0xA3, 0xA3},
|
||||
{0xA3, 0xB2, 0xA3, 0xA3, 0xA3, 0xA3, 0xA3, 0xA3, 0xB0, 0x87, 0xB5, 0x99, 0xF1, 0xA3, 0xA3, 0xA3},
|
||||
{0x98, 0xF1, 0xA3, 0xA3, 0xA3, 0xA3, 0x97, 0xA3, 0xA3, 0xA3, 0xA3, 0xF3, 0x9B, 0xA3, 0xA3, 0xDC},
|
||||
{0xB9, 0xA7, 0xF1, 0x26, 0x26, 0x26, 0xD8, 0xD8, 0xFF}
|
||||
}
|
||||
};
|
||||
|
||||
//DMP update transmissions (Bank, Start Address, Update Length, Update Data...)
|
||||
|
||||
static byte dmp_updates[29][9] =
|
||||
{
|
||||
{
|
||||
0x03, 0x7B, 0x03, 0x4C, 0xCD, 0x6C
|
||||
} //FCFG_1 inv_set_gyro_calibration
|
||||
,
|
||||
{
|
||||
0x03, 0xAB, 0x03, 0x36, 0x56, 0x76
|
||||
} //FCFG_3 inv_set_gyro_calibration
|
||||
,
|
||||
{
|
||||
0x00, 0x68, 0x04, 0x02, 0xCB, 0x47, 0xA2
|
||||
} //D_0_104 inv_set_gyro_calibration
|
||||
,
|
||||
{
|
||||
0x02, 0x18, 0x04, 0x00, 0x05, 0x8B, 0xC1
|
||||
} //D_0_24 inv_set_gyro_calibration
|
||||
,
|
||||
{
|
||||
0x01, 0x0C, 0x04, 0x00, 0x00, 0x00, 0x00
|
||||
} //D_1_152 inv_set_accel_calibration
|
||||
,
|
||||
{
|
||||
0x03, 0x7F, 0x06, 0x0C, 0xC9, 0x2C, 0x97, 0x97, 0x97
|
||||
} //FCFG_2 inv_set_accel_calibration
|
||||
,
|
||||
{
|
||||
0x03, 0x89, 0x03, 0x26, 0x46, 0x66
|
||||
} //FCFG_7 inv_set_accel_calibration
|
||||
,
|
||||
{
|
||||
0x00, 0x6C, 0x02, 0x20, 0x00
|
||||
} //D_0_108 inv_set_accel_calibration
|
||||
,
|
||||
{
|
||||
0x02, 0x40, 0x04, 0x00, 0x00, 0x00, 0x00
|
||||
} //CPASS_MTX_00 inv_set_compass_calibration
|
||||
,
|
||||
{
|
||||
0x02, 0x44, 0x04, 0x00, 0x00, 0x00, 0x00
|
||||
} //CPASS_MTX_01
|
||||
,
|
||||
{
|
||||
0x02, 0x48, 0x04, 0x00, 0x00, 0x00, 0x00
|
||||
} //CPASS_MTX_02
|
||||
,
|
||||
{
|
||||
0x02, 0x4C, 0x04, 0x00, 0x00, 0x00, 0x00
|
||||
} //CPASS_MTX_10
|
||||
,
|
||||
{
|
||||
0x02, 0x50, 0x04, 0x00, 0x00, 0x00, 0x00
|
||||
} //CPASS_MTX_11
|
||||
,
|
||||
{
|
||||
0x02, 0x54, 0x04, 0x00, 0x00, 0x00, 0x00
|
||||
} //CPASS_MTX_12
|
||||
,
|
||||
{
|
||||
0x02, 0x58, 0x04, 0x00, 0x00, 0x00, 0x00
|
||||
} //CPASS_MTX_20
|
||||
,
|
||||
{
|
||||
0x02, 0x5C, 0x04, 0x00, 0x00, 0x00, 0x00
|
||||
} //CPASS_MTX_21
|
||||
,
|
||||
{
|
||||
0x02, 0xBC, 0x04, 0x00, 0x00, 0x00, 0x00
|
||||
} //CPASS_MTX_22
|
||||
,
|
||||
{
|
||||
0x01, 0xEC, 0x04, 0x00, 0x00, 0x40, 0x00
|
||||
} //D_1_236 inv_apply_endian_accel
|
||||
,
|
||||
{
|
||||
0x03, 0x7F, 0x06, 0x0C, 0xC9, 0x2C, 0x97, 0x97, 0x97
|
||||
} //FCFG_2 inv_set_mpu_sensors
|
||||
,
|
||||
{
|
||||
0x04, 0x02, 0x03, 0x0D, 0x35, 0x5D
|
||||
} //CFG_MOTION_BIAS inv_turn_on_bias_from_no_motion
|
||||
,
|
||||
{
|
||||
0x04, 0x09, 0x04, 0x87, 0x2D, 0x35, 0x3D
|
||||
} //FCFG_5 inv_set_bias_update
|
||||
,
|
||||
{
|
||||
0x00, 0xA3, 0x01, 0x00
|
||||
} //D_0_163 inv_set_dead_zone
|
||||
,
|
||||
//SET INT_ENABLE at i=22
|
||||
{
|
||||
0x07, 0x86, 0x01, 0xFE
|
||||
} //CFG_6 inv_set_fifo_interupt
|
||||
,
|
||||
{
|
||||
0x07, 0x41, 0x05, 0xF1, 0x20, 0x28, 0x30, 0x38
|
||||
} //CFG_8 inv_send_quaternion
|
||||
,
|
||||
{
|
||||
0x07, 0x7E, 0x01, 0x30
|
||||
} //CFG_16 inv_set_footer
|
||||
,
|
||||
{
|
||||
0x07, 0x46, 0x01, 0x9A
|
||||
} //CFG_GYRO_SOURCE inv_send_gyro
|
||||
,
|
||||
{
|
||||
0x07, 0x47, 0x04, 0xF1, 0x28, 0x30, 0x38
|
||||
} //CFG_9 inv_send_gyro -> inv_construct3_fifo
|
||||
,
|
||||
{
|
||||
0x07, 0x6C, 0x04, 0xF1, 0x28, 0x30, 0x38
|
||||
} //CFG_12 inv_send_accel -> inv_construct3_fifo
|
||||
,
|
||||
{
|
||||
0x02, 0x16, 0x02, 0x00, 0x0A
|
||||
} //D_0_22 inv_set_fifo_rate
|
||||
};
|
||||
|
||||
void setup() {
|
||||
|
||||
Serial.begin(9600); //start serial to communicate process
|
||||
wirelessSPI.begin(); //Start the nRF24 module
|
||||
wirelessSPI.openWritingPipe(wAddress); //open writing or transmit pipe
|
||||
wirelessSPI.openReadingPipe(1, rAddress); //open reading or recieve pipe
|
||||
wirelessSPI.stopListening(); //go into transmit mode
|
||||
|
||||
Wire.begin();
|
||||
delay(1);
|
||||
check_MPU();
|
||||
//Serial.println("MPU-6050 6-Axis");
|
||||
|
||||
regWrite(0x6B, 0xC0);
|
||||
regWrite(0x6C, 0x00);
|
||||
delay(10);
|
||||
|
||||
//regWrite(0x6B, 0x70);
|
||||
regWrite(0x6B, 0x00);
|
||||
regWrite(0x6D, 0x70);
|
||||
regWrite(0x6E, 0x06);
|
||||
temp = regRead(0x6F);
|
||||
//Serial.print("Bank 1, Reg 6 = ");
|
||||
//Serial.println(temp, HEX);
|
||||
|
||||
// temp = regRead(0x6B);
|
||||
// Serial.println(temp, HEX);
|
||||
|
||||
regWrite(0x6D, 0x00);
|
||||
|
||||
temp = regRead(0x00);
|
||||
//Serial.println(temp, HEX);
|
||||
temp = regRead(0x01);
|
||||
//Serial.println(temp, HEX);
|
||||
temp = regRead(0x02);
|
||||
//Serial.println(temp, HEX);
|
||||
temp = regRead(0x6A);
|
||||
//Serial.println(temp, HEX);
|
||||
|
||||
regWrite(0x37, 0x32);
|
||||
|
||||
temp = regRead(0x6B);
|
||||
//Serial.println(temp, HEX);
|
||||
delay(5);
|
||||
// regWrite(0x25, 0x68); //Set Slave 0 to self
|
||||
//
|
||||
// regWrite(0x6A, 0x02);
|
||||
|
||||
mem_init();
|
||||
delay(20);
|
||||
}
|
||||
|
||||
void loop() {
|
||||
// =========================================================
|
||||
// This part is from the DOF sensor exemple
|
||||
|
||||
if (millis() >= lastRead + 1) {
|
||||
lastRead = millis();
|
||||
|
||||
int toto = fifoReady();
|
||||
if ( toto == 1) {
|
||||
getPacket();
|
||||
temp = regRead(0x3A);
|
||||
if (firstPacket) {
|
||||
delay(1);
|
||||
bank_sel(0x00);
|
||||
regWrite(0x6E, 0x60);
|
||||
Wire.beginTransmission(MPU_ADDR);
|
||||
Wire.write(0x6F);
|
||||
Wire.write(0x04); Wire.write(0x00); Wire.write(0x00); Wire.write(0x00);
|
||||
// Wire.write(0x00); Wire.write(0x80); Wire.write(0x00); Wire.write(0x00);
|
||||
Wire.endTransmission();
|
||||
bank_sel(1);
|
||||
regWrite(0x6E, 0x62);
|
||||
Wire.beginTransmission(MPU_ADDR);
|
||||
Wire.write(0x6F);
|
||||
Wire.endTransmission();
|
||||
Wire.beginTransmission(MPU_ADDR);
|
||||
Wire.requestFrom(MPU_ADDR, 2);
|
||||
temp = Wire.read();
|
||||
temp = Wire.read();
|
||||
firstPacket = false;
|
||||
|
||||
fifoReady();
|
||||
}
|
||||
// resetFifo();
|
||||
|
||||
// =====================================================
|
||||
// If the fifo count is good, enter the function to transform Quaternions to
|
||||
// Euler, send the Bluetooth data, and read Bluetooth for recalibration.
|
||||
if (fifoCountL == 42) {
|
||||
processQuat();
|
||||
sendQuat();
|
||||
if (flag_calibration == 1) { // use home quaternion
|
||||
//Serial.println("HQ Activate");
|
||||
quatProd(hq, q);
|
||||
quaternionToEuler(q2, Euler);
|
||||
print_data(); // use the print data for debugging purposes is you have a Serial port
|
||||
}
|
||||
else {
|
||||
quaternionToEuler(q, Euler);
|
||||
}
|
||||
|
||||
pack_data(); // Function to pack and store the data into tx_data[] for Bluetooth
|
||||
if (!wirelessSPI.write( &tx_data, 4 )) {
|
||||
Serial.println("Guess delivery failed");
|
||||
}
|
||||
else {
|
||||
Serial.println("Success sending guess: ");
|
||||
}
|
||||
|
||||
// ================================================================
|
||||
// This part read shortly the bluetooth in case a recalibration message is send from the central
|
||||
wirelessSPI.startListening();
|
||||
rx_data = '0';
|
||||
for (int i = 0; i < 10; i++) {
|
||||
if (!wirelessSPI.available()) {
|
||||
delayMicroseconds(100);
|
||||
}
|
||||
else {
|
||||
wirelessSPI.read( &rx_data, 1); //read value
|
||||
}
|
||||
}
|
||||
if (rx_data == '1') {
|
||||
Serial.println("Calibration OK");
|
||||
quatConjugate(q); // store the Quaternions into reference Quaternion hq[]
|
||||
flag_calibration = 1; // Flag to use the qualibration
|
||||
}
|
||||
wirelessSPI.stopListening(); //go back to transmit mode
|
||||
}
|
||||
}
|
||||
}
|
||||
delay(10);
|
||||
}
|
||||
|
||||
void pack_data() {
|
||||
|
||||
int tmp0 = Euler[0] * 100;
|
||||
int tmp1 = Euler[1] * 100;
|
||||
int tmp2 = Euler[2] * 100;
|
||||
|
||||
tmp0 = map(tmp0, -320, 320, 0, 255);
|
||||
tmp1 = map(tmp1, -320, 320, 0, 255);
|
||||
tmp2 = map(tmp2, -320, 320, 0, 255);
|
||||
tx_data[0] = tmp0;
|
||||
tx_data[1] = tmp1;
|
||||
tx_data[2] = tmp2;
|
||||
// tx_data[3] is empty. So we can add the buttons action in this byte
|
||||
}
|
||||
|
||||
void print_data() {
|
||||
Serial.print(" HQ : ");
|
||||
Serial.print(hq[0], 3);
|
||||
Serial.print(" --- ");
|
||||
Serial.print(hq[1], 3);
|
||||
Serial.print(" --- ");
|
||||
Serial.print(hq[2], 3);
|
||||
Serial.print(" --- ");
|
||||
Serial.print(hq[3], 3);
|
||||
Serial.print(" Q : ");
|
||||
Serial.print(q[0], 3);
|
||||
Serial.print(" --- ");
|
||||
Serial.print(q[1], 3);
|
||||
Serial.print(" --- ");
|
||||
Serial.print(q[2], 3);
|
||||
Serial.print(" --- ");
|
||||
Serial.print(q[3], 3);
|
||||
Serial.print(" Euler : ");
|
||||
Serial.print(Euler[0], 3);
|
||||
Serial.print(" --- ");
|
||||
Serial.print(Euler[1], 3);
|
||||
Serial.print(" --- ");
|
||||
Serial.print(Euler[2], 3);
|
||||
Serial.println();
|
||||
}
|
||||
|
||||
void check_MPU() {
|
||||
|
||||
Wire.beginTransmission(MPU_ADDR);
|
||||
Wire.write(0x75);
|
||||
Wire.endTransmission();
|
||||
Wire.beginTransmission(MPU_ADDR);
|
||||
Wire.requestFrom(MPU_ADDR, 1);
|
||||
byte aByte = Wire.read();
|
||||
// Wire.endTransmission();
|
||||
// while(Wire.available() == 0){
|
||||
// }
|
||||
// byte temp = Wire.read();
|
||||
// Serial.println(temp);
|
||||
if (aByte == 0x68) {
|
||||
//Serial.println("Found MPU6050");
|
||||
}
|
||||
else {
|
||||
Serial.println("Didn't find MPU6050");
|
||||
}
|
||||
}
|
||||
|
||||
void processQuat() {
|
||||
processed_packet[0] = received_packet[0];
|
||||
processed_packet[1] = received_packet[1];
|
||||
processed_packet[2] = received_packet[4];
|
||||
processed_packet[3] = received_packet[5];
|
||||
processed_packet[4] = received_packet[8];
|
||||
processed_packet[5] = received_packet[9];
|
||||
processed_packet[6] = received_packet[12];
|
||||
processed_packet[7] = received_packet[13];
|
||||
}
|
||||
|
||||
void sendQuat() {
|
||||
|
||||
// following conversion adapted from Invensense's TeaPot example
|
||||
q[0] = (long) ((((unsigned long) processed_packet[0]) << 8) + ((unsigned long) processed_packet[1]));
|
||||
q[1] = (long) ((((unsigned long) processed_packet[2]) << 8) + ((unsigned long) processed_packet[3]));
|
||||
q[2] = (long) ((((unsigned long) processed_packet[4]) << 8) + ((unsigned long) processed_packet[5]));
|
||||
q[3] = (long) ((((unsigned long) processed_packet[6]) << 8) + ((unsigned long) processed_packet[7]));
|
||||
for (int i = 0; i < 4; i++ ) {
|
||||
if ( q[i] > 32767 ) {
|
||||
q[i] -= 65536;
|
||||
}
|
||||
q[i] = ((float) q[i]) / 16384.0f;
|
||||
}
|
||||
}
|
||||
|
||||
void quaternionToEuler(float q[4], float euler[3]) {
|
||||
euler[0] = atan2(2 * q[1] * q[2] - 2 * q[0] * q[3], 2 * q[0] * q[0] + 2 * q[1] * q[1] - 1); // psi
|
||||
euler[1] = -asin(2 * q[1] * q[3] + 2 * q[0] * q[2]); // theta
|
||||
euler[2] = atan2(2 * q[2] * q[3] - 2 * q[0] * q[1], 2 * q[0] * q[0] + 2 * q[3] * q[3] - 1); // phi
|
||||
}
|
||||
|
||||
void quatProd(float a[4], float b[4]) {
|
||||
|
||||
q2[0] = a[0] * b[0] - a[1] * b[1] - a[2] * b[2] - a[3] * b[3];
|
||||
q2[1] = a[0] * b[1] + a[1] * b[0] + a[2] * b[3] - a[3] * b[2];
|
||||
q2[2] = a[0] * b[2] - a[1] * b[3] + a[2] * b[0] + a[3] * b[1];
|
||||
q2[3] = a[0] * b[3] + a[1] * b[2] - a[2] * b[1] + a[3] * b[0];
|
||||
|
||||
}
|
||||
|
||||
void quatConjugate(float quat[]) {
|
||||
|
||||
hq[0] = quat[0];
|
||||
hq[1] = -quat[1];
|
||||
hq[2] = -quat[2];
|
||||
hq[3] = -quat[3];
|
||||
|
||||
//return conj;
|
||||
}
|
||||
|
||||
void bank_sel(byte bank) {
|
||||
Wire.beginTransmission(MPU_ADDR);
|
||||
Wire.write(0x6D);
|
||||
Wire.write(bank);
|
||||
Wire.endTransmission();
|
||||
}
|
||||
|
||||
void dmp_init() {
|
||||
|
||||
for (int i = 0; i < 7; i++) {
|
||||
bank_sel(i);
|
||||
for (byte j = 0; j < 16; j++) {
|
||||
|
||||
byte start_addy = j * 0x10;
|
||||
|
||||
Wire.beginTransmission(MPU_ADDR);
|
||||
Wire.write(MEM_START_ADDR);
|
||||
Wire.write(start_addy);
|
||||
Wire.endTransmission();
|
||||
|
||||
Wire.beginTransmission(MPU_ADDR);
|
||||
Wire.write(MEM_R_W);
|
||||
for (int k = 0; k < 16; k++) {
|
||||
unsigned char byteToSend = pgm_read_byte(&(dmpMem[i][j][k]));
|
||||
Wire.write((byte) byteToSend);
|
||||
}
|
||||
Wire.endTransmission();
|
||||
}
|
||||
|
||||
// Wire.beginTransmission(MPU_ADDR);
|
||||
// Wire.write(MEM_R_W);
|
||||
// Wire.endTransmission();
|
||||
// Wire.requestFrom(MPU_ADDR, 16);
|
||||
// byte echoback[16];
|
||||
// for(int j = 0; j < 16; j++){
|
||||
// echoback[j] = Wire.read();
|
||||
// }
|
||||
// for(int j = 0; j < 16; j++){
|
||||
// Serial.print(echoback[j], HEX);
|
||||
// }
|
||||
}
|
||||
|
||||
bank_sel(7);
|
||||
|
||||
for (byte j = 0; j < 8; j++) {
|
||||
|
||||
byte start_addy = j * 0x10;
|
||||
|
||||
Wire.beginTransmission(MPU_ADDR);
|
||||
Wire.write(MEM_START_ADDR);
|
||||
Wire.write(start_addy);
|
||||
Wire.endTransmission();
|
||||
|
||||
Wire.beginTransmission(MPU_ADDR);
|
||||
Wire.write(MEM_R_W);
|
||||
for (int k = 0; k < 16; k++) {
|
||||
unsigned char byteToSend = pgm_read_byte(&(dmpMem[7][j][k]));
|
||||
Wire.write((byte) byteToSend);
|
||||
}
|
||||
Wire.endTransmission();
|
||||
}
|
||||
|
||||
Wire.beginTransmission(MPU_ADDR);
|
||||
Wire.write(MEM_START_ADDR);
|
||||
Wire.write(0x80);
|
||||
Wire.endTransmission();
|
||||
|
||||
Wire.beginTransmission(MPU_ADDR);
|
||||
Wire.write(MEM_R_W);
|
||||
for (int k = 0; k < 9; k++) {
|
||||
unsigned char byteToSend = pgm_read_byte(&(dmpMem[7][8][k]));
|
||||
Wire.write((byte) byteToSend);
|
||||
}
|
||||
Wire.endTransmission();
|
||||
|
||||
Wire.beginTransmission(MPU_ADDR);
|
||||
Wire.write(MEM_R_W);
|
||||
Wire.endTransmission();
|
||||
Wire.beginTransmission(MPU_ADDR);
|
||||
Wire.requestFrom(MPU_ADDR, 9);
|
||||
// Wire.endTransmission();
|
||||
byte incoming[9];
|
||||
for (int i = 0; i < 9; i++) {
|
||||
incoming[i] = Wire.read();
|
||||
}
|
||||
}
|
||||
|
||||
void mem_init() {
|
||||
|
||||
dmp_init();
|
||||
|
||||
for (byte i = 0; i < 22; i++) {
|
||||
bank_sel(dmp_updates[i][0]);
|
||||
Wire.beginTransmission(MPU_ADDR);
|
||||
Wire.write(MEM_START_ADDR);
|
||||
Wire.write(dmp_updates[i][1]);
|
||||
Wire.endTransmission();
|
||||
|
||||
Wire.beginTransmission(MPU_ADDR);
|
||||
Wire.write(MEM_R_W);
|
||||
for (byte j = 0; j < dmp_updates[i][2]; j++) {
|
||||
Wire.write(dmp_updates[i][j + 3]);
|
||||
}
|
||||
Wire.endTransmission();
|
||||
}
|
||||
|
||||
regWrite(0x38, 0x32);
|
||||
|
||||
for (byte i = 22; i < 29; i++) {
|
||||
bank_sel(dmp_updates[i][0]);
|
||||
Wire.beginTransmission(MPU_ADDR);
|
||||
Wire.write(MEM_START_ADDR);
|
||||
Wire.write(dmp_updates[i][1]);
|
||||
Wire.endTransmission();
|
||||
|
||||
Wire.beginTransmission(MPU_ADDR);
|
||||
Wire.write(MEM_R_W);
|
||||
for (byte j = 0; j < dmp_updates[i][2]; j++) {
|
||||
Wire.write(dmp_updates[i][j + 3]);
|
||||
}
|
||||
Wire.endTransmission();
|
||||
}
|
||||
|
||||
temp = regRead(0x6B);
|
||||
//Serial.println(temp, HEX);
|
||||
temp = regRead(0x6C);
|
||||
//Serial.println(temp, HEX);
|
||||
|
||||
regWrite(0x38, 0x02);
|
||||
regWrite(0x6B, 0x03);
|
||||
// regWrite(0x6B, 0x70);
|
||||
// regWrite(0x38, 0x38);
|
||||
// regWrite(0x6B, 0x73);
|
||||
regWrite(0x19, 0x04);
|
||||
regWrite(0x1B, 0x18);
|
||||
regWrite(0x1A, 0x0B);
|
||||
regWrite(0x70, 0x03);
|
||||
regWrite(0x71, 0x00);
|
||||
regWrite(0x00, 0x00);
|
||||
regWrite(0x01, 0x00);
|
||||
regWrite(0x02, 0x00);
|
||||
|
||||
Wire.beginTransmission(MPU_ADDR);
|
||||
Wire.write(0x13);
|
||||
for (byte i = 0; i < 6; i++) {
|
||||
Wire.write(0x00);
|
||||
}
|
||||
Wire.endTransmission();
|
||||
|
||||
// regWrite(0x24, 0x00);
|
||||
|
||||
bank_sel(0x01);
|
||||
regWrite(0x6E, 0xB2);
|
||||
Wire.beginTransmission(MPU_ADDR);
|
||||
Wire.write(0x6F);
|
||||
Wire.write(0xFF); Wire.write(0xFF);
|
||||
Wire.endTransmission();
|
||||
|
||||
bank_sel(0x01);
|
||||
regWrite(0x6E, 0x90);
|
||||
|
||||
Wire.beginTransmission(MPU_ADDR);
|
||||
Wire.write(0x6F);
|
||||
Wire.write(0x09); Wire.write(0x23); Wire.write(0xA1); Wire.write(0x35);
|
||||
Wire.endTransmission();
|
||||
|
||||
temp = regRead(0x6A);
|
||||
|
||||
regWrite(0x6A, 0x04);
|
||||
|
||||
//Insert FIFO count read?
|
||||
fifoReady();
|
||||
|
||||
regWrite(0x6A, 0x00);
|
||||
regWrite(0x6B, 0x03);
|
||||
|
||||
delay(2);
|
||||
|
||||
temp = regRead(0x6C);
|
||||
// Serial.println(temp, HEX);
|
||||
regWrite(0x6C, 0x00);
|
||||
temp = regRead(0x1C);
|
||||
// Serial.println(temp, HEX);
|
||||
regWrite(0x1C, 0x00);
|
||||
delay(2);
|
||||
temp = regRead(0x6B);
|
||||
// Serial.println(temp, HEX);
|
||||
regWrite(0x1F, 0x02);
|
||||
regWrite(0x21, 0x9C);
|
||||
regWrite(0x20, 0x50);
|
||||
regWrite(0x22, 0x00);
|
||||
regWrite(0x6A, 0x04);
|
||||
regWrite(0x6A, 0x00);
|
||||
regWrite(0x6A, 0xC8);
|
||||
|
||||
bank_sel(0x01);
|
||||
regWrite(0x6E, 0x6A);
|
||||
Wire.beginTransmission(MPU_ADDR);
|
||||
Wire.write(0x6F);
|
||||
Wire.write(0x06); Wire.write(0x00);
|
||||
Wire.endTransmission();
|
||||
|
||||
bank_sel(0x01);
|
||||
regWrite(0x6E, 0x60);
|
||||
Wire.beginTransmission(MPU_ADDR);
|
||||
Wire.write(0x6F);
|
||||
for (byte i = 0; i < 8; i++) {
|
||||
Wire.write(0x00);
|
||||
}
|
||||
Wire.endTransmission();
|
||||
|
||||
// bank_sel(0x01);
|
||||
// regWrite(0x6E, 0x60);
|
||||
// Wire.beginTransmission(MPU_ADDR);
|
||||
// Wire.write(0x6F);
|
||||
// Wire.write(0x04); Wire.write(0x00); Wire.write(0x00); Wire.write(0x00);
|
||||
// Wire.endTransmission();
|
||||
|
||||
bank_sel(0x00);
|
||||
regWrite(0x6E, 0x60);
|
||||
Wire.beginTransmission(MPU_ADDR);
|
||||
Wire.write(0x6F);
|
||||
Wire.write(0x40); Wire.write(0x00); Wire.write(0x00); Wire.write(0x00);
|
||||
Wire.endTransmission();
|
||||
|
||||
//resetFifo();
|
||||
|
||||
}
|
||||
|
||||
void regWrite(byte addy, byte regUpdate) {
|
||||
Wire.beginTransmission(MPU_ADDR);
|
||||
Wire.write(addy);
|
||||
Wire.write(regUpdate);
|
||||
Wire.endTransmission();
|
||||
}
|
||||
|
||||
byte regRead(byte addy) {
|
||||
Wire.beginTransmission(MPU_ADDR);
|
||||
Wire.write(addy);
|
||||
Wire.endTransmission();
|
||||
Wire.beginTransmission(MPU_ADDR);
|
||||
Wire.requestFrom(MPU_ADDR, 1);
|
||||
// Wire.endTransmission();
|
||||
while (!Wire.available()) {
|
||||
}
|
||||
byte incoming = Wire.read();
|
||||
return incoming;
|
||||
}
|
||||
|
||||
void getPacket() {
|
||||
if (fifoCountL > 32) {
|
||||
fifoCountL2 = fifoCountL - 32;
|
||||
longPacket = true;
|
||||
}
|
||||
Wire.beginTransmission(MPU_ADDR);
|
||||
Wire.write(0x74);
|
||||
Wire.endTransmission();
|
||||
// Wire.requestFrom(MPU_ADDR, 42);
|
||||
// for(byte i = 0; i < fifoCountL; i++){
|
||||
if (longPacket) {
|
||||
Wire.beginTransmission(MPU_ADDR);
|
||||
Wire.requestFrom(MPU_ADDR, 32);
|
||||
for (byte i = 0; i < 32; i++) {
|
||||
received_packet[i] = Wire.read();
|
||||
}
|
||||
Wire.beginTransmission(MPU_ADDR);
|
||||
Wire.write(0x74);
|
||||
Wire.endTransmission();
|
||||
Wire.beginTransmission(MPU_ADDR);
|
||||
Wire.requestFrom(MPU_ADDR, (unsigned int)fifoCountL2);
|
||||
for (byte i = 32; i < fifoCountL; i++) {
|
||||
received_packet[i] = Wire.read();
|
||||
}
|
||||
longPacket = false;
|
||||
}
|
||||
else {
|
||||
Wire.beginTransmission(MPU_ADDR);
|
||||
Wire.requestFrom(MPU_ADDR, (unsigned int)fifoCountL);
|
||||
for (byte i = 0; i < fifoCountL; i++) {
|
||||
received_packet[i] = Wire.read();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
byte read_interrupt() {
|
||||
byte int_status = regRead(0x3A);
|
||||
return int_status;
|
||||
}
|
||||
|
||||
boolean fifoReady() {
|
||||
Wire.beginTransmission(MPU_ADDR);
|
||||
Wire.write(0x72);
|
||||
Wire.endTransmission();
|
||||
Wire.beginTransmission(MPU_ADDR);
|
||||
Wire.requestFrom(MPU_ADDR, 2);
|
||||
// Wire.endTransmission();
|
||||
byte fifoCountH = Wire.read();
|
||||
fifoCountL = Wire.read();
|
||||
//Serial.print("fifoCount :");
|
||||
//Serial.println(fifoCountL, DEC);
|
||||
if (fifoCountL == 42 || fifoCountL == 44) {
|
||||
return 1;
|
||||
}
|
||||
else if (fifoCountL != 0) {
|
||||
resetFifo();
|
||||
}
|
||||
|
||||
// else if(fifoCountL == 42){
|
||||
// getPacket();
|
||||
// bank_sel(0);
|
||||
// regWrite(0x6E, 0x60);
|
||||
// Wire.beginTransmission(MPU_ADDR);
|
||||
// Wire.write(0x40); Wire.write(0x00); Wire.write (0x00); Wire.write(0x00);
|
||||
// Wire.endTransmission();
|
||||
// resetFifo();
|
||||
// }
|
||||
|
||||
// if(Wire.read() == 0x2C){
|
||||
// return 1;
|
||||
// }
|
||||
else return 0;
|
||||
}
|
||||
|
||||
void resetFifo() {
|
||||
byte ctrl = regRead(0x6A);
|
||||
ctrl |= 0b00000100;
|
||||
regWrite(0x6A, ctrl);
|
||||
}
|
||||
|
|
@ -0,0 +1,71 @@
|
|||
|
||||
#include "Wire.h"
|
||||
#include "WiiChuck.h"
|
||||
|
||||
#include <SPI.h> //Call SPI library so you can communicate with the nRF24L01+
|
||||
#include <nRF24L01.h> //nRF2401 libarary found at https://github.com/tmrh20/RF24/
|
||||
#include <RF24.h> //nRF2401 libarary found at https://github.com/tmrh20/RF24/
|
||||
|
||||
const int pinCE = 9; //This pin is used to set the nRF24 to standby (0) or active mode (1)
|
||||
const int pinCSN = 10; //This pin is used to tell the nRF24 whether the SPI communication is a command or message to send out
|
||||
//bool done = false; //used to know when to stop sending guesses
|
||||
RF24 wirelessSPI(pinCE, pinCSN); // Create your nRF24 object or wireless SPI connection
|
||||
|
||||
const uint64_t wAddress = 0xB00B1E50C3LL; //pipe for writing or transmitting data
|
||||
const uint64_t rAddress = 0xB00B1E50A4LL; //pipe for reading or recieving data
|
||||
|
||||
int buttonPin = 2;
|
||||
int flag_zero = 0;
|
||||
|
||||
WiiChuck chuck = WiiChuck();
|
||||
|
||||
void setup() {
|
||||
|
||||
Serial.begin(9600); //for debugging purposes
|
||||
chuck.begin();
|
||||
chuck.update();
|
||||
|
||||
wirelessSPI.begin(); //Start the nRF24 module
|
||||
wirelessSPI.openWritingPipe(wAddress); // setup pipe to transmit over
|
||||
wirelessSPI.openReadingPipe(1, rAddress); //set up pipe to recieve data
|
||||
wirelessSPI.stopListening(); //turn off recieve capability so you can transmit
|
||||
|
||||
}
|
||||
|
||||
void loop() {
|
||||
|
||||
char tx_data[4];
|
||||
chuck.update();
|
||||
|
||||
tx_data[0] = chuck.readJoyX();
|
||||
tx_data[1] = chuck.readJoyY();
|
||||
tx_data[2] = chuck.buttonZ;
|
||||
tx_data[3] = chuck.buttonC;
|
||||
|
||||
Serial.print(tx_data[0], DEC);
|
||||
Serial.print(",");
|
||||
Serial.print(tx_data[1], DEC);
|
||||
Serial.print(",");
|
||||
Serial.print(tx_data[2], DEC);
|
||||
Serial.print(",");
|
||||
Serial.print(tx_data[3], DEC);
|
||||
Serial.print(",");
|
||||
Serial.println();
|
||||
|
||||
if (digitalRead(buttonPin) == HIGH && ((tx_data[0] < -10 || 10 < tx_data[0] || tx_data[1] < -10 || 10 < tx_data[1] || tx_data[2] == 1 || tx_data[3] == 1) || flag_zero == 1 )) {
|
||||
flag_zero = 1;
|
||||
if (!wirelessSPI.write( &tx_data, 4 )) { //if the write fails let the user know over serial monitor
|
||||
//Serial.println("Guess delivery failed");
|
||||
}
|
||||
else { //if the write was successful
|
||||
//Serial.print("Success sending guess: ");
|
||||
if (tx_data[0] >= -10 || 10 >= tx_data[0] || tx_data[1] >= -10 || 10 >= tx_data[1] || tx_data[2] != 1 || tx_data[3] != 1)
|
||||
{
|
||||
flag_zero = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
delay(20); // adapt the speed of the communication
|
||||
}
|
||||
|
||||
|
Before Width: | Height: | Size: 145 KiB After Width: | Height: | Size: 145 KiB |
Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 19 KiB |
Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 19 KiB |
|
@ -1,8 +1,8 @@
|
|||
# Blender MTL File: 'goku_armL.blend'
|
||||
# Blender MTL File: 'Full_remake.blend'
|
||||
# Material Count: 1
|
||||
|
||||
newmtl shirt.png
|
||||
Ns 94.117647
|
||||
newmtl shirt.png.002
|
||||
Ns 92.156863
|
||||
Ka 0.000000 0.000000 0.000000
|
||||
Kd 0.800000 0.800000 0.800000
|
||||
Ks 0.250000 0.250000 0.250000
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
# Blender MTL File: 'goku_armR.blend'
|
||||
# Blender MTL File: 'Full_remake.blend'
|
||||
# Material Count: 1
|
||||
|
||||
newmtl shirt.png
|
||||
Ns 94.117647
|
||||
newmtl shirt.png.003
|
||||
Ns 92.156863
|
||||
Ka 0.000000 0.000000 0.000000
|
||||
Kd 0.800000 0.800000 0.800000
|
||||
Ks 0.250000 0.250000 0.250000
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
# Blender MTL File: 'goku_body.blend'
|
||||
# Blender MTL File: 'Full_remake.blend'
|
||||
# Material Count: 2
|
||||
|
||||
newmtl face.png
|
||||
Ns 94.117647
|
||||
newmtl face.png.002
|
||||
Ns 92.156863
|
||||
Ka 0.000000 0.000000 0.000000
|
||||
Kd 0.800000 0.800000 0.800000
|
||||
Ks 0.250000 0.250000 0.250000
|
||||
|
@ -12,8 +12,8 @@ d 1.000000
|
|||
illum 2
|
||||
map_Kd face.png
|
||||
|
||||
newmtl shirt.png
|
||||
Ns 94.117647
|
||||
newmtl shirt.png.006
|
||||
Ns 92.156863
|
||||
Ka 0.000000 0.000000 0.000000
|
||||
Kd 0.800000 0.800000 0.800000
|
||||
Ks 0.250000 0.250000 0.250000
|
||||
|
|
|
@ -1,796 +0,0 @@
|
|||
# Blender v2.78 (sub 0) OBJ File: 'goku_but.blend'
|
||||
# www.blender.org
|
||||
mtllib goku_but.mtl
|
||||
o Mesh.404_DrawCall_231
|
||||
v 0.475495 -6.851077 5.927885
|
||||
v -0.974058 -6.994266 5.969336
|
||||
v -0.207846 -7.075940 5.738859
|
||||
v -0.059468 -4.511393 5.219516
|
||||
v -1.354284 -4.782181 5.310412
|
||||
v -0.542549 -2.889269 4.745246
|
||||
v -1.579777 -3.065513 4.764746
|
||||
v -0.800596 -1.682663 4.363117
|
||||
v -1.552796 -1.376293 4.253779
|
||||
v -0.508107 -1.127298 3.959467
|
||||
v -0.677767 -0.516909 3.765977
|
||||
v 1.728195 -4.890497 5.560431
|
||||
v 2.098316 -6.913107 6.113510
|
||||
v 1.188761 -5.048457 5.299483
|
||||
v 1.414638 -3.198853 5.025880
|
||||
v 0.928703 -3.243254 4.785519
|
||||
v 0.945782 -1.512402 4.504103
|
||||
v 0.637077 -1.714396 4.350008
|
||||
v 0.089218 -0.473704 3.787919
|
||||
v 0.077814 -0.828726 3.746697
|
||||
v 0.266019 -1.853164 4.476185
|
||||
v -0.043930 -1.015683 3.940284
|
||||
v 0.355578 -3.224892 4.857217
|
||||
v 0.534047 -5.092503 5.363545
|
||||
v 0.802175 -7.552659 6.120742
|
||||
v -0.665942 -4.770462 5.067711
|
||||
v -1.021117 -3.051101 4.565580
|
||||
v -1.156086 -1.593628 4.137355
|
||||
v -0.563330 -0.885333 3.733055
|
||||
v -3.308380 -2.022602 2.087972
|
||||
v -3.492086 -3.126119 2.389845
|
||||
v -2.601696 -1.917898 3.266991
|
||||
v -3.168515 -2.191569 0.874412
|
||||
v -3.328959 -3.413897 0.995084
|
||||
v -2.620748 -2.336073 -0.355519
|
||||
v -2.627681 -4.100455 -0.471426
|
||||
v -1.414081 -2.404872 -1.174468
|
||||
v -1.389324 -4.528122 -1.271440
|
||||
v -0.174890 -2.371409 -1.363810
|
||||
v -0.020520 -4.628504 -1.330331
|
||||
v -0.499228 -4.816451 4.570999
|
||||
v 0.098619 -6.442481 4.623457
|
||||
v 0.126197 -4.009347 4.452708
|
||||
v 1.156566 -3.119626 4.488718
|
||||
v -0.055592 -2.106488 4.147342
|
||||
v 0.395704 -4.520350 4.633654
|
||||
v 1.400530 -5.985281 -0.699964
|
||||
v -0.222493 -2.171215 3.975572
|
||||
v -0.346658 -4.142872 4.444407
|
||||
v -0.067103 -4.358532 4.338860
|
||||
v -0.481874 -2.122838 4.118295
|
||||
v -1.589537 -3.227942 4.299101
|
||||
v -1.553793 -1.990388 3.886665
|
||||
v -2.777637 -2.989382 3.553890
|
||||
v -0.629519 -0.857790 3.694321
|
||||
v -0.307605 -0.402968 3.656911
|
||||
v -1.273941 -0.429334 3.569972
|
||||
v 0.071683 -0.836344 3.736451
|
||||
v 0.672540 -0.371441 3.684782
|
||||
v 0.718640 -0.814875 3.744971
|
||||
v 1.568678 -0.299411 3.440147
|
||||
v 1.553067 -0.772707 3.493965
|
||||
v 2.556939 -0.207146 2.913464
|
||||
v 2.593673 -0.706221 2.929502
|
||||
v 3.332409 -0.076207 1.875667
|
||||
v 3.416229 -0.620244 1.878649
|
||||
v 3.643308 0.041751 0.526969
|
||||
v 3.737131 -0.533674 0.509125
|
||||
v 3.097449 0.106469 -0.523290
|
||||
v 3.159023 -0.495051 -0.544392
|
||||
v 1.938309 0.103580 -0.988993
|
||||
v 1.993210 -0.507127 -1.041104
|
||||
v 0.815532 0.079779 -1.175797
|
||||
v 0.895383 -0.533877 -1.230732
|
||||
v -0.260349 -0.576063 -1.176527
|
||||
v -0.214785 -0.977867 -1.078466
|
||||
v -1.496195 -1.029932 -0.777505
|
||||
v 1.989301 -0.908518 -0.943658
|
||||
v 0.914303 -0.938666 -1.123326
|
||||
v 3.090381 -0.885620 -0.496972
|
||||
v 3.717294 -0.896569 0.531643
|
||||
v 3.401765 -0.948156 1.857662
|
||||
v 2.527884 -0.980940 2.855119
|
||||
v 1.565170 -1.002648 3.399217
|
||||
v 0.742328 -1.021590 3.649139
|
||||
v -0.362836 0.035144 -1.124733
|
||||
v -1.625893 -0.641410 -0.831901
|
||||
v -1.705173 -0.036372 -0.806600
|
||||
v -2.680944 -0.729993 0.123489
|
||||
v -2.720374 -0.147523 0.151577
|
||||
v -3.010256 -0.816816 1.492513
|
||||
v -3.039730 -0.265718 1.499789
|
||||
v -2.702787 -0.868227 2.611261
|
||||
v -2.759346 -0.365266 2.599886
|
||||
v -1.955709 -0.880026 3.283155
|
||||
v -2.037385 -0.406662 3.227425
|
||||
v -1.262259 -0.875469 3.625961
|
||||
v -2.593800 -1.095131 0.145633
|
||||
v -2.917739 -1.146985 1.471137
|
||||
v -2.549117 -1.140685 2.544586
|
||||
v -1.878688 -1.111006 3.188574
|
||||
v -1.201970 -1.082768 3.530210
|
||||
v -0.240621 -1.053930 3.634494
|
||||
v -0.576023 -1.063976 3.597478
|
||||
v 0.102612 -1.042618 3.638991
|
||||
v 2.853081 -6.387684 -0.817067
|
||||
v 3.524593 -2.215441 -0.837937
|
||||
v 4.258815 -2.072193 0.113274
|
||||
v 4.719586 -3.810664 0.035879
|
||||
v 4.296258 -3.109034 1.849905
|
||||
v 1.636792 -6.294012 -0.814885
|
||||
v 1.316209 -4.569225 -1.004517
|
||||
v 1.556854 -4.601165 -1.183673
|
||||
v 1.105581 -2.308226 -1.205743
|
||||
v 1.233290 -2.314905 -1.278469
|
||||
v 1.182262 -4.615935 -1.209534
|
||||
v 1.280740 -6.194402 -0.898185
|
||||
v 0.115364 -6.281590 -1.104070
|
||||
v 4.141424 -1.911180 1.372520
|
||||
v 4.081901 -5.957349 -0.670831
|
||||
v 2.351356 -1.727915 3.604504
|
||||
v 3.636052 -1.756237 2.561181
|
||||
v 1.056519 -1.890267 4.064539
|
||||
v 2.770620 -4.518417 -1.137609
|
||||
v 3.693731 -2.838596 3.214322
|
||||
v 1.020825 -2.323059 -1.292949
|
||||
v 0.227584 -0.805898 3.515318
|
||||
v -0.070606 -1.147150 3.978035
|
||||
v -0.054255 -1.188841 3.431521
|
||||
v -0.043541 -0.903034 4.080644
|
||||
v -0.201903 -1.160494 3.972472
|
||||
v -0.226954 -0.908139 4.094521
|
||||
v -0.220308 -1.221120 3.969484
|
||||
v -0.266237 -0.951848 4.161092
|
||||
v -0.479005 -1.243878 3.954295
|
||||
v -0.634355 -1.004509 4.139565
|
||||
v -0.578056 -0.905165 3.468109
|
||||
v -0.768481 -0.594731 4.040802
|
||||
v -0.768932 -0.407617 3.770466
|
||||
v -0.192356 -0.289666 3.804061
|
||||
v -0.090501 -0.373252 3.530167
|
||||
v -0.127254 -0.270066 3.527554
|
||||
v -0.153904 -0.344757 3.756101
|
||||
v 0.175753 -0.424427 3.546111
|
||||
v 0.115639 -0.396125 3.790492
|
||||
v 0.033661 -0.629563 3.996018
|
||||
v -0.250412 -0.513280 4.071080
|
||||
v -0.715823 -0.388374 3.493260
|
||||
v -0.198594 -0.536828 3.981906
|
||||
v -0.309309 -1.204541 3.416506
|
||||
v 2.424294 -2.271708 -1.186696
|
||||
v 4.028558 -4.314429 -0.897350
|
||||
v 4.770242 -4.504759 -0.027220
|
||||
v -1.304330 -5.795643 -1.134559
|
||||
v -2.572629 -4.681137 -0.484993
|
||||
v 2.610950 -2.776841 3.925970
|
||||
vt 0.0273 0.7688
|
||||
vt 0.0984 0.7703
|
||||
vt 0.0625 0.7570
|
||||
vt 0.0211 0.8313
|
||||
vt 0.1055 0.8320
|
||||
vt 0.0164 0.9078
|
||||
vt 0.1102 0.9094
|
||||
vt 0.0133 0.9625
|
||||
vt 0.1141 0.9617
|
||||
vt 0.0117 0.9953
|
||||
vt 0.1156 0.9937
|
||||
vt 0.0602 0.8305
|
||||
vt 0.1102 0.9094
|
||||
vt 0.1055 0.8320
|
||||
vt 0.0609 0.9086
|
||||
vt 0.1141 0.9617
|
||||
vt 0.0617 0.9625
|
||||
vt 0.1156 0.9937
|
||||
vt 0.0602 0.9937
|
||||
vt 0.0133 0.9625
|
||||
vt 0.0117 0.9953
|
||||
vt 0.0164 0.9078
|
||||
vt 0.0211 0.8313
|
||||
vt 0.0273 0.7688
|
||||
vt 0.0602 0.8305
|
||||
vt 0.0609 0.9086
|
||||
vt 0.0617 0.9625
|
||||
vt 0.0602 0.9937
|
||||
vt 0.0984 0.7703
|
||||
vt 0.4668 0.9043
|
||||
vt 0.4707 0.8496
|
||||
vt 0.3769 0.9004
|
||||
vt 0.5488 0.9082
|
||||
vt 0.5488 0.8496
|
||||
vt 0.6504 0.9082
|
||||
vt 0.6504 0.8418
|
||||
vt 0.7402 0.9082
|
||||
vt 0.7402 0.8184
|
||||
vt 0.8301 0.9082
|
||||
vt 0.8301 0.8027
|
||||
vt 0.2012 0.7949
|
||||
vt 0.2871 0.8193
|
||||
vt 0.2012 0.8691
|
||||
vt 0.2168 0.7559
|
||||
vt 0.1816 0.8691
|
||||
vt 0.2012 0.7949
|
||||
vt 0.1816 0.7949
|
||||
vt 0.2012 0.8691
|
||||
vt 0.2876 0.8193
|
||||
vt 0.2832 0.8887
|
||||
vt 0.3789 0.8384
|
||||
vt 0.0781 0.0045
|
||||
vt 0.0092 0.0162
|
||||
vt 0.0088 0.0767
|
||||
vt 0.0781 0.0278
|
||||
vt 0.0088 0.0767
|
||||
vt 0.0781 0.0767
|
||||
vt 0.0095 0.1275
|
||||
vt 0.0742 0.1275
|
||||
vt 0.0091 0.1729
|
||||
vt 0.0703 0.1729
|
||||
vt 0.0085 0.2250
|
||||
vt 0.0703 0.2250
|
||||
vt 0.0085 0.2794
|
||||
vt 0.0703 0.2794
|
||||
vt 0.0085 0.3397
|
||||
vt 0.0703 0.3397
|
||||
vt 0.0085 0.3978
|
||||
vt 0.0703 0.3978
|
||||
vt 0.0090 0.4788
|
||||
vt 0.0703 0.4788
|
||||
vt 0.0703 0.3978
|
||||
vt 0.1261 0.3978
|
||||
vt 0.1261 0.3397
|
||||
vt 0.0703 0.4795
|
||||
vt 0.1260 0.3984
|
||||
vt 0.1260 0.4795
|
||||
vt 0.0703 0.3984
|
||||
vt 0.1260 0.3398
|
||||
vt 0.0703 0.3398
|
||||
vt 0.1260 0.2803
|
||||
vt 0.0703 0.2803
|
||||
vt 0.1260 0.2256
|
||||
vt 0.0703 0.2256
|
||||
vt 0.1250 0.1738
|
||||
vt 0.0703 0.1738
|
||||
vt 0.1250 0.1279
|
||||
vt 0.0742 0.1279
|
||||
vt 0.1250 0.0772
|
||||
vt 0.0781 0.0772
|
||||
vt 0.0781 0.0283
|
||||
vt 0.0085 0.3978
|
||||
vt 0.0703 0.3397
|
||||
vt 0.0085 0.3397
|
||||
vt 0.0703 0.2794
|
||||
vt 0.0085 0.2794
|
||||
vt 0.0703 0.2250
|
||||
vt 0.0085 0.2250
|
||||
vt 0.0703 0.1729
|
||||
vt 0.0091 0.1729
|
||||
vt 0.0742 0.1275
|
||||
vt 0.0095 0.1275
|
||||
vt 0.0781 0.0767
|
||||
vt 0.0781 0.0278
|
||||
vt 0.1260 0.3398
|
||||
vt 0.0703 0.3398
|
||||
vt 0.0703 0.3979
|
||||
vt 0.1260 0.2798
|
||||
vt 0.0703 0.2798
|
||||
vt 0.1260 0.2251
|
||||
vt 0.0703 0.2251
|
||||
vt 0.1255 0.1738
|
||||
vt 0.0703 0.1733
|
||||
vt 0.1255 0.1279
|
||||
vt 0.0742 0.1279
|
||||
vt 0.1255 0.0772
|
||||
vt 0.1260 0.4790
|
||||
vt 0.1260 0.3979
|
||||
vt 0.0703 0.4790
|
||||
vt 0.0781 0.0049
|
||||
vt 0.1255 0.0161
|
||||
vt 0.1255 0.0049
|
||||
vt 0.1255 0.0278
|
||||
vt 0.1255 0.0772
|
||||
vt 0.1255 0.0278
|
||||
vt 0.7402 0.9668
|
||||
vt 0.7402 0.9082
|
||||
vt 0.8340 0.9668
|
||||
vt 0.6504 0.9082
|
||||
vt 0.6504 0.8418
|
||||
vt 0.5488 0.8496
|
||||
vt 0.9277 0.8027
|
||||
vt 0.9121 0.7480
|
||||
vt 0.9277 0.7480
|
||||
vt 0.9121 0.8027
|
||||
vt 0.9277 0.9082
|
||||
vt 0.9121 0.9082
|
||||
vt 0.9121 0.8027
|
||||
vt 0.9121 0.7480
|
||||
vt 0.8301 0.7480
|
||||
vt 0.1816 0.6777
|
||||
vt 0.1816 0.9668
|
||||
vt 0.2363 0.9668
|
||||
vt 0.3789 0.8384
|
||||
vt 0.5996 0.9668
|
||||
vt 0.4902 0.9668
|
||||
vt 0.5488 0.9082
|
||||
vt 0.4121 0.9668
|
||||
vt 0.3301 0.9668
|
||||
vt 0.3769 0.9004
|
||||
vt 0.4668 0.9043
|
||||
vt 0.2754 0.9668
|
||||
vt 0.2363 0.9668
|
||||
vt 0.2832 0.8887
|
||||
vt 0.8301 0.7480
|
||||
vt 0.8301 0.8027
|
||||
vt 0.7402 0.7715
|
||||
vt 0.4707 0.8496
|
||||
vt 0.8340 0.9668
|
||||
vt 0.9277 0.9668
|
||||
vt 0.9121 0.9082
|
||||
vt 0.1348 0.6621
|
||||
vt 0.1123 0.6060
|
||||
vt 0.1035 0.6035
|
||||
vt 0.1196 0.6299
|
||||
vt 0.1035 0.6035
|
||||
vt 0.1025 0.6313
|
||||
vt 0.0864 0.5913
|
||||
vt 0.0791 0.6289
|
||||
vt 0.0449 0.5894
|
||||
vt 0.0547 0.6270
|
||||
vt 0.0288 0.6631
|
||||
vt 0.0439 0.6611
|
||||
vt 0.0337 0.6714
|
||||
vt 0.0947 0.6841
|
||||
vt 0.1025 0.6699
|
||||
vt 0.0923 0.6773
|
||||
vt 0.1035 0.6743
|
||||
vt 0.1265 0.6685
|
||||
vt 0.1269 0.6733
|
||||
vt 0.1206 0.6533
|
||||
vt 0.0833 0.6685
|
||||
vt 0.0442 0.6611
|
||||
vt 0.0923 0.6773
|
||||
vt 0.0339 0.6714
|
||||
vt 0.0947 0.6838
|
||||
vt 0.0286 0.6775
|
||||
vt 0.0830 0.6685
|
||||
vt 0.1011 0.6602
|
||||
vt 0.0684 0.6001
|
||||
vt 0.1074 0.6001
|
||||
vt 0.1074 0.6001
|
||||
vt 0.0283 0.6777
|
||||
vt 0.8301 0.9082
|
||||
vt 0.7402 0.8184
|
||||
vt 0.6504 0.8105
|
||||
vt 0.2754 0.9668
|
||||
vt 0.3301 0.9668
|
||||
vt 0.4121 0.9668
|
||||
vt 0.4902 0.9668
|
||||
vt 0.5996 0.9668
|
||||
vt 0.7402 0.9668
|
||||
vt 0.7402 0.7715
|
||||
vt 0.6504 0.8105
|
||||
vt 0.2876 0.8191
|
||||
vt 0.2168 0.7559
|
||||
vt 0.2876 0.8191
|
||||
vn 0.9161 -0.3170 0.2454
|
||||
vn -0.7765 -0.5483 0.3103
|
||||
vn 0.1047 -0.9123 -0.3960
|
||||
vn 0.9650 0.2446 0.0946
|
||||
vn -0.9731 -0.1090 0.2031
|
||||
vn 0.9454 0.2834 0.1610
|
||||
vn -0.9874 -0.0340 0.1542
|
||||
vn 0.9330 0.1309 0.3352
|
||||
vn -0.8902 0.4491 0.0761
|
||||
vn 0.7866 -0.5641 0.2511
|
||||
vn -0.7468 0.6097 -0.2655
|
||||
vn 0.1219 -0.2632 -0.9570
|
||||
vn 0.9274 0.2954 0.2293
|
||||
vn 0.0732 0.2648 0.9615
|
||||
vn 0.1777 -0.2328 -0.9561
|
||||
vn 0.8106 0.5434 0.2182
|
||||
vn 0.2598 -0.2969 -0.9189
|
||||
vn 0.7494 0.6034 0.2727
|
||||
vn 0.5742 -0.1606 -0.8028
|
||||
vn -0.9760 -0.1551 0.1528
|
||||
vn -0.9177 -0.2963 0.2647
|
||||
vn -0.9965 -0.0831 0.0098
|
||||
vn -0.9826 -0.1849 -0.0138
|
||||
vn -0.1828 0.2709 0.9451
|
||||
vn 0.0062 -0.2785 -0.9604
|
||||
vn 0.0301 -0.2700 -0.9624
|
||||
vn -0.0896 -0.3493 -0.9327
|
||||
vn -0.2590 -0.2678 -0.9280
|
||||
vn -0.1497 0.2639 0.9528
|
||||
vn -0.9319 0.3237 0.1638
|
||||
vn -0.9460 -0.2186 0.2394
|
||||
vn -0.6518 0.3983 0.6453
|
||||
vn -0.9434 0.1903 -0.2716
|
||||
vn -0.9311 -0.3258 -0.1640
|
||||
vn -0.7492 0.1426 -0.6467
|
||||
vn -0.8591 -0.1747 -0.4810
|
||||
vn -0.3596 0.1292 -0.9241
|
||||
vn -0.3128 -0.0521 -0.9484
|
||||
vn -0.0403 0.1017 -0.9940
|
||||
vn 0.0263 -0.0748 -0.9968
|
||||
vn -0.4323 0.1310 0.8921
|
||||
vn 0.1582 0.1225 0.9798
|
||||
vn -0.4025 0.2490 0.8809
|
||||
vn -0.0660 0.0340 0.9972
|
||||
vn -0.1391 0.2088 0.9680
|
||||
vn 0.2502 0.1738 0.9525
|
||||
vn -0.0812 0.1360 0.9874
|
||||
vn 0.1759 0.2933 0.9397
|
||||
vn -0.3452 0.0598 0.9366
|
||||
vn -0.3148 0.3779 0.8707
|
||||
vn -0.7243 -0.0864 0.6840
|
||||
vn -0.0858 -0.1528 0.9845
|
||||
vn -0.0635 0.1397 0.9881
|
||||
vn -0.2008 0.6745 0.7104
|
||||
vn -0.0240 -0.1427 0.9894
|
||||
vn 0.0544 0.6937 0.7182
|
||||
vn 0.1344 -0.1365 0.9815
|
||||
vn 0.2347 0.6938 0.6808
|
||||
vn 0.3767 -0.1265 0.9177
|
||||
vn 0.4449 0.6703 0.5939
|
||||
vn 0.6511 -0.1306 0.7476
|
||||
vn 0.6072 0.7093 0.3581
|
||||
vn 0.8959 0.0264 0.4434
|
||||
vn 0.7013 0.7117 -0.0407
|
||||
vn 0.9898 0.0454 -0.1352
|
||||
vn 0.4785 0.7056 -0.5225
|
||||
vn 0.6695 -0.0421 -0.7416
|
||||
vn 0.1734 0.7514 -0.6366
|
||||
vn 0.2801 -0.0578 -0.9582
|
||||
vn 0.0141 0.7481 -0.6634
|
||||
vn 0.0669 -0.0758 -0.9949
|
||||
vn -0.1352 -0.0912 -0.9866
|
||||
vn -0.1137 -0.0298 -0.9930
|
||||
vn -0.4316 -0.0021 -0.9021
|
||||
vn 0.2473 -0.0021 -0.9689
|
||||
vn 0.0623 -0.0641 -0.9960
|
||||
vn 0.6196 0.1090 -0.7773
|
||||
vn 0.9615 0.2405 -0.1325
|
||||
vn 0.8628 0.2745 0.4245
|
||||
vn 0.6311 0.1558 0.7598
|
||||
vn 0.3725 0.1118 0.9212
|
||||
vn 0.1358 0.0312 0.9902
|
||||
vn -0.1373 0.7334 -0.6657
|
||||
vn -0.4566 -0.1366 -0.8791
|
||||
vn -0.3979 0.6671 -0.6297
|
||||
vn -0.8498 -0.1332 -0.5100
|
||||
vn -0.6943 0.6380 -0.3328
|
||||
vn -0.9846 -0.1731 0.0252
|
||||
vn -0.7815 0.6211 0.0590
|
||||
vn -0.8179 -0.2970 0.4928
|
||||
vn -0.6873 0.5827 0.4336
|
||||
vn -0.5362 -0.2368 0.8101
|
||||
vn -0.4210 0.6447 0.6380
|
||||
vn -0.2683 -0.1857 0.9452
|
||||
vn -0.8486 0.0285 -0.5282
|
||||
vn -0.9962 0.0869 0.0003
|
||||
vn -0.8540 0.0252 0.5197
|
||||
vn -0.5567 0.0233 0.8304
|
||||
vn -0.2632 -0.0166 0.9646
|
||||
vn -0.0613 0.0127 0.9980
|
||||
vn -0.1128 -0.0108 0.9935
|
||||
vn -0.0128 0.0021 0.9999
|
||||
vn 0.5323 0.2496 -0.8089
|
||||
vn 0.8967 0.3361 -0.2880
|
||||
vn 0.9868 -0.0342 -0.1581
|
||||
vn 0.9194 -0.1041 0.3791
|
||||
vn 0.1713 -0.1273 -0.9769
|
||||
vn -0.3731 -0.6956 -0.6139
|
||||
vn 0.1020 -0.6857 -0.7206
|
||||
vn -0.2874 -0.1433 -0.9470
|
||||
vn 0.1290 0.0154 -0.9915
|
||||
vn -0.2043 0.0134 -0.9788
|
||||
vn 0.5183 -0.0589 -0.8532
|
||||
vn 0.5652 -0.6543 -0.5024
|
||||
vn -0.0447 -0.7643 -0.6433
|
||||
vn -0.0779 -0.7083 0.7015
|
||||
vn 0.4602 0.1130 0.8806
|
||||
vn 0.9224 0.3386 0.1857
|
||||
vn 0.4049 0.4664 0.7865
|
||||
vn 0.7439 0.4522 0.4919
|
||||
vn 0.1357 0.4012 0.9059
|
||||
vn 0.1751 -0.7953 -0.5803
|
||||
vn 0.1223 -0.0837 -0.9890
|
||||
vn 0.6684 -0.6293 -0.3965
|
||||
vn 0.7685 -0.0051 0.6398
|
||||
vn 0.3967 0.0817 -0.9143
|
||||
vn 0.9310 -0.2445 0.2710
|
||||
vn 0.4557 -0.7089 0.5382
|
||||
vn 0.4719 -0.8810 0.0328
|
||||
vn 0.5004 -0.1226 0.8571
|
||||
vn 0.5864 -0.5213 0.6199
|
||||
vn 0.5950 -0.0355 0.8029
|
||||
vn 0.4752 -0.7534 0.4543
|
||||
vn 0.4250 -0.1558 0.8917
|
||||
vn -0.4144 -0.8706 0.2651
|
||||
vn -0.6290 -0.3693 0.6840
|
||||
vn -0.8780 -0.4336 -0.2029
|
||||
vn -0.7886 0.2392 0.5665
|
||||
vn -0.8210 0.5564 0.1275
|
||||
vn 0.3926 0.8303 0.3955
|
||||
vn 0.5811 0.8107 0.0713
|
||||
vn 0.5124 0.8393 0.1815
|
||||
vn 0.6495 0.6825 0.3351
|
||||
vn 0.7852 0.6071 0.1220
|
||||
vn 0.6215 0.6731 0.4006
|
||||
vn 0.5845 0.2389 0.7754
|
||||
vn 0.3905 0.4547 0.8005
|
||||
vn -0.8162 0.5657 -0.1171
|
||||
vn 0.5946 0.3897 0.7033
|
||||
vn -0.2991 -0.9412 -0.1570
|
||||
vn 0.1773 0.1276 -0.9758
|
||||
vn 0.5179 0.0168 -0.8553
|
||||
vn 0.9443 -0.3258 -0.0456
|
||||
vn -0.4507 -0.6381 -0.6242
|
||||
vn -0.9122 -0.3293 -0.2437
|
||||
vn -0.2213 -0.0496 0.9739
|
||||
usemtl pants.png
|
||||
s 1
|
||||
f 1/1/1 2/2/2 3/3/3
|
||||
f 4/4/4 2/2/2 1/1/1
|
||||
f 4/4/4 5/5/5 2/2/2
|
||||
f 6/6/6 5/5/5 4/4/4
|
||||
f 6/6/6 7/7/7 5/5/5
|
||||
f 8/8/8 7/7/7 6/6/6
|
||||
f 8/8/8 9/9/9 7/7/7
|
||||
f 10/10/10 9/9/9 8/8/8
|
||||
f 10/10/10 11/11/11 9/9/9
|
||||
f 14/12/12 15/13/13 12/14/14
|
||||
f 16/15/15 15/13/13 14/12/12
|
||||
f 16/15/15 17/16/16 15/13/13
|
||||
f 18/17/17 17/16/16 16/15/15
|
||||
f 18/17/17 19/18/18 17/16/16
|
||||
f 20/19/19 19/18/18 18/17/17
|
||||
f 20/19/19 21/20/20 22/21/21
|
||||
f 18/17/17 21/20/20 20/19/19
|
||||
f 18/17/17 23/22/22 21/20/20
|
||||
f 16/15/15 23/22/22 18/17/17
|
||||
f 16/15/15 24/23/23 23/22/22
|
||||
f 14/12/12 24/23/23 16/15/15
|
||||
f 14/12/12 25/24/24 24/23/23
|
||||
f 2/2/2 26/25/25 3/3/3
|
||||
f 5/5/5 26/25/25 2/2/2
|
||||
f 5/5/5 27/26/26 26/25/25
|
||||
f 7/7/7 27/26/26 5/5/5
|
||||
f 7/7/7 28/27/27 27/26/26
|
||||
f 9/9/9 28/27/27 7/7/7
|
||||
f 9/9/9 29/28/28 28/27/27
|
||||
f 11/11/11 29/28/28 9/9/9
|
||||
f 13/29/29 24/23/23 25/24/24
|
||||
f 12/14/14 24/23/23 13/29/29
|
||||
f 12/14/14 23/22/22 24/23/23
|
||||
f 15/13/13 23/22/22 12/14/14
|
||||
f 15/13/13 21/20/20 23/22/22
|
||||
f 17/16/16 21/20/20 15/13/13
|
||||
f 17/16/16 22/21/21 21/20/20
|
||||
f 19/18/18 22/21/21 17/16/16
|
||||
f 8/8/8 28/27/27 29/28/28
|
||||
f 6/6/6 28/27/27 8/8/8
|
||||
f 6/6/6 27/26/26 28/27/27
|
||||
f 4/4/4 27/26/26 6/6/6
|
||||
f 4/4/4 26/25/25 27/26/26
|
||||
f 1/1/1 26/25/25 4/4/4
|
||||
f 1/1/1 3/3/3 26/25/25
|
||||
f 10/10/10 8/8/8 29/28/28
|
||||
f 30/30/30 31/31/31 32/32/32
|
||||
f 33/33/33 31/31/31 30/30/30
|
||||
f 33/33/33 34/34/34 31/31/31
|
||||
f 35/35/35 34/34/34 33/33/33
|
||||
f 35/35/35 36/36/36 34/34/34
|
||||
f 37/37/37 36/36/36 35/35/35
|
||||
f 37/37/37 38/38/38 36/36/36
|
||||
f 39/39/39 38/38/38 37/37/37
|
||||
f 39/39/39 40/40/40 38/38/38
|
||||
f 43/41/41 44/42/42 45/43/43
|
||||
f 46/44/44 44/42/42 43/41/41
|
||||
f 48/45/45 49/46/46 50/47/47
|
||||
f 51/48/48 49/46/46 48/45/45
|
||||
f 51/48/48 52/49/49 49/46/46
|
||||
f 53/50/50 52/49/49 51/48/48
|
||||
f 53/50/50 54/51/51 52/49/49
|
||||
f 32/32/32 54/51/51 53/50/50
|
||||
f 32/32/32 31/31/31 54/51/51
|
||||
f 55/52/52 56/53/53 57/54/54
|
||||
f 58/55/55 56/53/53 55/52/52
|
||||
f 58/55/55 59/56/56 56/53/53
|
||||
f 60/57/57 59/56/56 58/55/55
|
||||
f 60/57/57 61/58/58 59/56/56
|
||||
f 62/59/59 61/58/58 60/57/57
|
||||
f 62/59/59 63/60/60 61/58/58
|
||||
f 64/61/61 63/60/60 62/59/59
|
||||
f 64/61/61 65/62/62 63/60/60
|
||||
f 66/63/63 65/62/62 64/61/61
|
||||
f 66/63/63 67/64/64 65/62/62
|
||||
f 68/65/65 67/64/64 66/63/63
|
||||
f 68/65/65 69/66/66 67/64/64
|
||||
f 70/67/67 69/66/66 68/65/65
|
||||
f 70/67/67 71/68/68 69/66/66
|
||||
f 72/69/69 71/68/68 70/67/67
|
||||
f 72/69/69 73/70/70 71/68/68
|
||||
f 74/71/71 73/70/70 72/69/69
|
||||
f 74/71/71 75/72/72 73/70/70
|
||||
f 76/73/73 75/72/72 74/71/71
|
||||
f 76/73/73 77/74/74 75/72/72
|
||||
f 74/75/71 78/76/75 79/77/76
|
||||
f 72/78/69 78/76/75 74/75/71
|
||||
f 72/78/69 80/79/77 78/76/75
|
||||
f 70/80/67 80/79/77 72/78/69
|
||||
f 70/80/67 81/81/78 80/79/77
|
||||
f 68/82/65 81/81/78 70/80/67
|
||||
f 68/82/65 82/83/79 81/81/78
|
||||
f 66/84/63 82/83/79 68/82/65
|
||||
f 66/84/63 83/85/80 82/83/79
|
||||
f 64/86/61 83/85/80 66/84/63
|
||||
f 64/86/61 84/87/81 83/85/80
|
||||
f 62/88/59 84/87/81 64/86/61
|
||||
f 62/88/59 85/89/82 84/87/81
|
||||
f 60/90/57 85/89/82 62/88/59
|
||||
f 60/90/57 58/91/55 85/89/82
|
||||
f 75/72/72 86/92/83 73/70/70
|
||||
f 87/93/84 86/92/83 75/72/72
|
||||
f 87/93/84 88/94/85 86/92/83
|
||||
f 89/95/86 88/94/85 87/93/84
|
||||
f 89/95/86 90/96/87 88/94/85
|
||||
f 91/97/88 90/96/87 89/95/86
|
||||
f 91/97/88 92/98/89 90/96/87
|
||||
f 93/99/90 92/98/89 91/97/88
|
||||
f 93/99/90 94/100/91 92/98/89
|
||||
f 95/101/92 94/100/91 93/99/90
|
||||
f 95/101/92 96/102/93 94/100/91
|
||||
f 97/103/94 96/102/93 95/101/92
|
||||
f 97/103/94 57/54/54 96/102/93
|
||||
f 55/104/52 57/54/54 97/103/94
|
||||
f 77/105/74 87/106/84 75/107/72
|
||||
f 98/108/95 87/106/84 77/105/74
|
||||
f 98/108/95 89/109/86 87/106/84
|
||||
f 99/110/96 89/109/86 98/108/95
|
||||
f 99/110/96 91/111/88 89/109/86
|
||||
f 100/112/97 91/111/88 99/110/96
|
||||
f 100/112/97 93/113/90 91/111/88
|
||||
f 101/114/98 93/113/90 100/112/97
|
||||
f 101/114/98 95/115/92 93/113/90
|
||||
f 102/116/99 95/115/92 101/114/98
|
||||
f 102/116/99 97/103/94 95/115/92
|
||||
f 55/104/52 97/103/94 102/116/99
|
||||
f 79/117/76 76/118/73 74/119/71
|
||||
f 55/120/52 103/121/100 58/55/55
|
||||
f 104/122/101 103/121/100 55/120/52
|
||||
f 105/123/102 85/124/82 58/55/55
|
||||
f 105/123/102 58/55/55 103/121/100
|
||||
f 104/125/101 55/104/52 102/116/99
|
||||
f 80/126/77 107/127/103 78/128/75
|
||||
f 108/129/104 107/127/103 80/126/77
|
||||
f 108/129/104 109/130/105 107/127/103
|
||||
f 110/131/106 109/130/105 108/129/104
|
||||
f 112/132/107 111/133/108 47/134/109
|
||||
f 112/132/107 113/135/110 111/133/108
|
||||
f 114/136/111 113/135/110 112/132/107
|
||||
f 114/136/111 115/137/112 113/135/110
|
||||
f 112/132/107 116/138/113 114/136/111
|
||||
f 117/139/114 116/138/113 112/132/107
|
||||
f 117/139/114 118/140/115 116/138/113
|
||||
f 43/41/41 42/141/116 46/44/44
|
||||
f 51/48/48 48/45/45 103/142/100
|
||||
f 104/143/101 51/48/48 103/142/100
|
||||
f 51/48/48 104/143/101 53/50/50
|
||||
f 156/144/117 46/44/44 42/141/116
|
||||
f 81/145/78 82/146/79 119/147/118
|
||||
f 47/134/109 42/141/116 117/139/114
|
||||
f 119/147/118 110/131/106 108/129/104
|
||||
f 83/148/80 84/149/81 121/150/119
|
||||
f 121/150/119 122/151/120 83/148/80
|
||||
f 85/152/82 105/153/102 123/154/121
|
||||
f 81/145/78 108/129/104 80/126/77
|
||||
f 108/129/104 81/145/78 119/147/118
|
||||
f 106/155/122 124/156/123 120/157/124
|
||||
f 122/151/120 121/150/119 125/158/125
|
||||
f 76/159/73 79/160/76 126/161/126
|
||||
f 127/162/127 128/163/128 129/164/129
|
||||
f 130/165/130 128/163/128 127/162/127
|
||||
f 130/165/130 131/166/131 128/163/128
|
||||
f 132/167/132 131/166/131 130/165/130
|
||||
f 132/167/132 133/168/133 131/166/131
|
||||
f 134/169/134 133/168/133 132/167/132
|
||||
f 134/169/134 135/170/135 133/168/133
|
||||
f 136/171/136 135/170/135 134/169/134
|
||||
f 136/171/136 137/172/137 135/170/135
|
||||
f 138/173/138 137/172/137 136/171/136
|
||||
f 138/173/138 139/174/139 137/172/137
|
||||
f 140/175/140 141/176/141 142/177/142
|
||||
f 143/178/143 141/176/141 140/175/140
|
||||
f 143/178/143 144/179/144 141/176/141
|
||||
f 145/180/145 144/179/144 143/178/143
|
||||
f 145/180/145 127/162/127 144/179/144
|
||||
f 146/181/146 127/162/127 145/180/145
|
||||
f 146/181/146 130/165/130 127/162/127
|
||||
f 132/167/132 130/165/130 146/181/146
|
||||
f 147/182/147 138/183/138 136/171/136
|
||||
f 140/184/140 138/183/138 147/182/147
|
||||
f 140/184/140 139/185/139 138/183/138
|
||||
f 142/186/142 139/185/139 140/184/140
|
||||
f 142/186/142 148/187/148 139/185/139
|
||||
f 147/188/147 143/178/143 140/184/140
|
||||
f 149/189/149 143/178/143 147/188/147
|
||||
f 149/189/149 145/180/145 143/178/143
|
||||
f 146/181/146 145/180/145 149/189/149
|
||||
f 150/190/150 129/164/129 133/168/133
|
||||
f 131/166/131 129/191/129 128/163/128
|
||||
f 135/170/135 150/190/150 133/168/133
|
||||
f 131/192/131 133/168/133 129/164/129
|
||||
f 148/193/148 137/172/137 139/174/139
|
||||
f 132/167/132 149/189/149 134/169/134
|
||||
f 134/169/134 147/188/147 136/171/136
|
||||
f 149/189/149 132/167/132 146/181/146
|
||||
f 147/188/147 134/169/134 149/189/149
|
||||
f 150/190/150 135/170/135 137/172/137
|
||||
f 151/194/151 124/156/123 115/137/112
|
||||
f 152/195/152 124/156/123 151/194/151
|
||||
f 152/195/152 120/157/124 124/156/123
|
||||
f 153/196/153 120/157/124 152/195/152
|
||||
f 119/147/118 125/158/125 110/131/106
|
||||
f 119/147/118 122/151/120 125/158/125
|
||||
f 82/146/79 122/151/120 119/147/118
|
||||
f 82/146/79 83/148/80 122/151/120
|
||||
f 102/197/99 53/50/50 104/143/101
|
||||
f 101/198/98 53/50/50 102/197/99
|
||||
f 101/198/98 32/32/32 53/50/50
|
||||
f 100/199/97 32/32/32 101/198/98
|
||||
f 100/199/97 30/30/30 32/32/32
|
||||
f 99/200/96 30/30/30 100/199/97
|
||||
f 99/200/96 33/33/33 30/30/30
|
||||
f 98/201/95 33/33/33 99/200/96
|
||||
f 98/201/95 35/35/35 33/33/33
|
||||
f 77/202/74 35/35/35 98/201/95
|
||||
f 77/202/74 37/37/37 35/35/35
|
||||
f 76/159/73 37/37/37 77/202/74
|
||||
f 76/159/73 39/39/39 37/37/37
|
||||
f 126/161/126 39/39/39 76/159/73
|
||||
f 126/161/126 40/40/40 39/39/39
|
||||
f 152/195/152 109/130/105 153/196/153
|
||||
f 152/195/152 107/127/103 109/130/105
|
||||
f 151/194/151 107/127/103 152/195/152
|
||||
f 151/194/151 78/128/75 107/127/103
|
||||
f 115/137/112 78/128/75 151/194/151
|
||||
f 115/137/112 79/160/76 78/128/75
|
||||
f 114/136/111 79/160/76 115/137/112
|
||||
f 114/136/111 126/161/126 79/160/76
|
||||
f 116/138/113 126/161/126 114/136/111
|
||||
f 116/138/113 40/40/40 126/161/126
|
||||
f 118/140/115 40/40/40 116/138/113
|
||||
f 118/140/115 154/203/154 40/40/40
|
||||
f 155/204/155 154/203/154 42/141/116
|
||||
f 42/141/116 154/203/154 118/140/115
|
||||
f 121/150/119 156/144/117 125/158/125
|
||||
f 121/150/119 123/154/121 156/144/117
|
||||
f 84/149/81 123/154/121 121/150/119
|
||||
f 84/149/81 85/152/82 123/154/121
|
||||
f 112/132/107 47/134/109 117/139/114
|
||||
f 123/154/121 44/205/42 156/144/117
|
||||
f 123/154/121 45/43/43 44/205/42
|
||||
f 105/153/102 45/43/43 123/154/121
|
||||
f 105/153/102 103/142/100 45/43/43
|
||||
f 124/156/123 113/135/110 115/137/112
|
||||
f 106/155/122 113/135/110 124/156/123
|
||||
f 106/155/122 111/133/108 113/135/110
|
||||
f 154/203/154 38/38/38 40/40/40
|
||||
f 155/204/155 38/38/38 154/203/154
|
||||
f 155/204/155 36/36/36 38/38/38
|
||||
f 41/206/156 49/46/46 52/207/49
|
||||
f 42/141/116 49/46/46 41/206/156
|
||||
f 42/141/116 50/47/47 49/46/46
|
||||
f 43/41/41 50/47/47 42/141/116
|
||||
f 43/41/41 48/45/45 50/47/47
|
||||
f 45/43/43 48/45/45 43/41/41
|
||||
f 45/43/43 103/142/100 48/45/45
|
||||
f 73/70/70 86/92/83 88/94/85 90/96/87 92/98/89 94/100/91 96/102/93 57/54/54 59/56/56 61/58/58 63/60/60 65/62/62 67/64/64 69/66/66 71/68/68
|
||||
f 156/144/117 44/42/42 46/44/44
|
||||
f 52/49/49 54/51/51 41/206/156
|
||||
f 54/51/51 31/31/31 41/206/156
|
||||
f 41/206/156 31/31/31 42/141/116
|
||||
f 31/31/31 34/34/34 42/141/116
|
||||
f 36/36/36 42/141/116 34/34/34
|
||||
f 155/204/155 42/141/116 36/36/36
|
||||
f 42/141/116 118/140/115 117/139/114
|
||||
f 47/134/109 111/133/108 42/141/116
|
||||
f 111/133/108 106/155/122 42/141/116
|
||||
f 120/157/124 42/141/116 106/155/122
|
||||
f 153/196/153 42/141/116 120/157/124
|
||||
f 153/196/153 109/130/105 110/131/106 125/158/125 42/141/116
|
||||
f 156/144/117 42/141/116 125/158/125
|
|
@ -1,8 +1,8 @@
|
|||
# Blender MTL File: 'goku_but.blend'
|
||||
# Blender MTL File: 'Full_remake.blend'
|
||||
# Material Count: 1
|
||||
|
||||
newmtl pants.png
|
||||
Ns 94.117647
|
||||
Ns 92.156863
|
||||
Ka 0.000000 0.000000 0.000000
|
||||
Kd 0.800000 0.800000 0.800000
|
||||
Ks 0.250000 0.250000 0.250000
|
|
@ -0,0 +1,768 @@
|
|||
# Blender v2.78 (sub 0) OBJ File: 'Full_remake.blend'
|
||||
# www.blender.org
|
||||
mtllib goku_butt.mtl
|
||||
o Mesh.404_DrawCall_231.001
|
||||
v 1.616103 17.341854 4.480275
|
||||
v 0.188419 17.247728 4.756474
|
||||
v 0.902027 17.150394 4.398479
|
||||
v 1.071702 19.730114 3.968482
|
||||
v -0.200778 19.500820 4.262344
|
||||
v 0.586488 21.389040 3.648927
|
||||
v -0.439901 21.248520 3.833491
|
||||
v 0.320544 22.620878 3.365453
|
||||
v -0.425680 22.958309 3.395656
|
||||
v 0.565887 23.184364 2.942127
|
||||
v 0.392772 23.808897 2.805059
|
||||
v 2.628906 16.839628 4.294509
|
||||
v 2.873350 19.272690 3.991040
|
||||
v 3.243209 17.214165 4.390433
|
||||
v 2.292082 19.146423 3.817207
|
||||
v 2.548214 20.997963 3.586757
|
||||
v 2.027883 20.982191 3.429010
|
||||
v 2.071926 22.722879 3.220697
|
||||
v 1.733754 22.539450 3.111899
|
||||
v 1.154029 23.824097 2.700791
|
||||
v 1.120912 23.472078 2.647358
|
||||
v 1.382990 22.407881 3.292220
|
||||
v 1.024882 23.280434 2.850587
|
||||
v 1.475702 21.017168 3.595812
|
||||
v 1.655590 19.122326 3.987480
|
||||
v 1.939966 16.620815 4.586800
|
||||
v 0.438052 19.500032 3.909142
|
||||
v 0.078423 21.252878 3.544878
|
||||
v -0.063167 22.733036 3.205906
|
||||
v 0.484459 23.438690 2.738298
|
||||
v -2.539894 22.478489 1.527400
|
||||
v -2.718103 21.368885 1.809618
|
||||
v -1.644854 22.501722 2.575643
|
||||
v -2.609145 22.363094 0.301541
|
||||
v -2.799328 21.142761 0.396445
|
||||
v -2.278096 22.258610 -1.007332
|
||||
v -2.379014 20.503141 -1.193532
|
||||
v -1.226837 22.186907 -2.017861
|
||||
v -1.308661 20.071186 -2.205563
|
||||
v -0.035475 22.185963 -2.409292
|
||||
v 0.026224 19.925837 -2.495602
|
||||
v 1.149692 20.261526 3.202955
|
||||
v 2.208791 21.111845 3.103804
|
||||
v 1.001133 22.182037 3.011284
|
||||
v 0.805619 22.131508 2.867160
|
||||
v 0.676687 20.145206 3.267953
|
||||
v 0.925615 19.925190 3.108492
|
||||
v 0.575585 22.182049 3.052952
|
||||
v -0.533122 21.109041 3.369638
|
||||
v -0.513235 22.362934 3.008684
|
||||
v -1.816515 21.424541 2.843145
|
||||
v 0.414026 23.470362 2.712298
|
||||
v 0.744416 23.914894 2.640716
|
||||
v -0.223276 23.926605 2.714834
|
||||
v 1.112859 23.465179 2.637968
|
||||
v 1.716207 23.910683 2.506320
|
||||
v 1.752701 23.463530 2.539555
|
||||
v 2.562049 23.962908 2.119124
|
||||
v 2.535412 23.488415 2.155116
|
||||
v 3.453072 24.045626 1.439564
|
||||
v 3.470700 23.545376 1.428554
|
||||
v 4.051860 24.198910 0.293493
|
||||
v 4.111827 23.652754 0.259917
|
||||
v 4.141086 24.370419 -1.082073
|
||||
v 4.206143 23.793577 -1.139133
|
||||
v 3.432938 24.504501 -2.023211
|
||||
v 3.464571 23.902895 -2.079194
|
||||
v 2.213860 24.564562 -2.289173
|
||||
v 2.233420 23.955507 -2.374976
|
||||
v 1.075668 24.589104 -2.287292
|
||||
v 1.119223 23.976366 -2.380152
|
||||
v -0.012529 23.972157 -2.136110
|
||||
v 0.031445 23.564764 -2.063749
|
||||
v -1.183927 23.543268 -1.556099
|
||||
v 2.228558 23.550289 -2.294968
|
||||
v 1.138353 23.566479 -2.294273
|
||||
v 3.388140 23.513149 -2.037247
|
||||
v 4.174881 23.430939 -1.128694
|
||||
v 4.080179 23.326933 0.228052
|
||||
v 3.381941 23.277012 1.354833
|
||||
v 2.521959 23.262997 2.050224
|
||||
v 1.751473 23.260941 2.432629
|
||||
v -0.079011 24.583393 -2.042677
|
||||
v -1.304180 23.938257 -1.571987
|
||||
v -1.352421 24.543793 -1.508775
|
||||
v -2.190249 23.841003 -0.458805
|
||||
v -2.199720 24.422482 -0.400416
|
||||
v -2.292947 23.700245 0.941142
|
||||
v -2.297368 24.251053 0.976070
|
||||
v -1.807868 23.584517 1.989989
|
||||
v -1.844096 24.089121 2.009056
|
||||
v -0.961507 23.514351 2.527071
|
||||
v -1.031052 23.992413 2.505393
|
||||
v -0.221504 23.478165 2.749548
|
||||
v -2.116246 23.472395 -0.466636
|
||||
v -2.219334 23.368441 0.890990
|
||||
v -1.679001 23.310352 1.887424
|
||||
v -0.911005 23.285612 2.411492
|
||||
v -0.186677 23.273708 2.636585
|
||||
v 0.779063 23.263807 2.580487
|
||||
v 0.442026 23.267307 2.599436
|
||||
v 1.118516 23.262856 2.528251
|
||||
v 3.703337 22.186802 -2.500582
|
||||
v 4.589627 22.258469 -1.679756
|
||||
v 4.957042 20.510628 -1.904795
|
||||
v 5.024763 21.150759 -0.362123
|
||||
v 1.399657 19.922546 -2.394680
|
||||
v 1.635674 18.402954 -2.380980
|
||||
v 1.472725 18.491434 -2.167398
|
||||
v 1.605927 19.890820 -2.612563
|
||||
v 1.255055 22.196583 -2.464102
|
||||
v 1.368639 22.188927 -2.557286
|
||||
v 1.231906 19.890442 -2.576297
|
||||
v 1.313143 18.296383 -2.351412
|
||||
v 0.127134 18.260059 -2.363865
|
||||
v 4.688212 22.362944 -0.412959
|
||||
v 3.299674 22.501617 2.091519
|
||||
v 4.392587 22.478340 0.848632
|
||||
v 2.092585 22.362873 2.753547
|
||||
v 2.750013 18.736845 -2.691362
|
||||
v 2.813106 19.928679 -2.765799
|
||||
v 4.003302 19.116348 -2.734004
|
||||
v 4.667258 21.376427 1.093580
|
||||
v 1.156540 22.188927 -2.536521
|
||||
v 1.231356 23.500708 2.395423
|
||||
v 0.999226 23.148327 2.886768
|
||||
v 0.923545 23.132334 2.343906
|
||||
v 1.053172 23.386143 2.993472
|
||||
v 0.868359 23.139874 2.902590
|
||||
v 0.874503 23.386810 3.037464
|
||||
v 0.847152 23.080141 2.900197
|
||||
v 0.844900 23.341362 3.107776
|
||||
v 0.588758 23.067217 2.927354
|
||||
v 0.476364 23.302727 3.145663
|
||||
v 0.425463 23.432112 2.478909
|
||||
v 0.345340 23.721218 3.087684
|
||||
v 0.308320 23.920977 2.829189
|
||||
v 0.887040 24.016903 2.771198
|
||||
v 0.938742 23.943024 2.480943
|
||||
v 0.906481 24.047441 2.488766
|
||||
v 0.914690 23.962860 2.715264
|
||||
v 1.201567 23.881845 2.450207
|
||||
v 1.183786 23.900490 2.702145
|
||||
v 1.126935 23.660482 2.908590
|
||||
v 0.864308 23.782919 3.034650
|
||||
v 0.315813 23.951612 2.548050
|
||||
v 0.899682 23.761871 2.937196
|
||||
v 0.669069 23.126320 2.370919
|
||||
v 2.559237 22.185911 -2.663343
|
||||
v 4.100954 20.076706 -2.730047
|
||||
v 4.967063 19.819008 -2.004174
|
||||
v -1.256234 18.796360 -2.137421
|
||||
v 3.563852 21.430037 2.321510
|
||||
v -2.351681 19.922205 -1.240142
|
||||
vt 0.0273 0.7688
|
||||
vt 0.0984 0.7703
|
||||
vt 0.0625 0.7570
|
||||
vt 0.0211 0.8313
|
||||
vt 0.1055 0.8320
|
||||
vt 0.0164 0.9078
|
||||
vt 0.1102 0.9094
|
||||
vt 0.0133 0.9625
|
||||
vt 0.1141 0.9617
|
||||
vt 0.0117 0.9953
|
||||
vt 0.1156 0.9937
|
||||
vt 0.0625 0.7570
|
||||
vt 0.1055 0.8320
|
||||
vt 0.0984 0.7703
|
||||
vt 0.0602 0.8305
|
||||
vt 0.1102 0.9094
|
||||
vt 0.0609 0.9086
|
||||
vt 0.1141 0.9617
|
||||
vt 0.0617 0.9625
|
||||
vt 0.1156 0.9937
|
||||
vt 0.0602 0.9937
|
||||
vt 0.0133 0.9625
|
||||
vt 0.0117 0.9953
|
||||
vt 0.0164 0.9078
|
||||
vt 0.0211 0.8313
|
||||
vt 0.0273 0.7688
|
||||
vt 0.0602 0.8305
|
||||
vt 0.0609 0.9086
|
||||
vt 0.0617 0.9625
|
||||
vt 0.0602 0.9937
|
||||
vt 0.4668 0.9043
|
||||
vt 0.4707 0.8496
|
||||
vt 0.3769 0.9004
|
||||
vt 0.5488 0.9082
|
||||
vt 0.5488 0.8496
|
||||
vt 0.6504 0.9082
|
||||
vt 0.6504 0.8418
|
||||
vt 0.7402 0.9082
|
||||
vt 0.7402 0.8184
|
||||
vt 0.8301 0.9082
|
||||
vt 0.8301 0.8027
|
||||
vt 0.2012 0.7949
|
||||
vt 0.2871 0.8193
|
||||
vt 0.2012 0.8691
|
||||
vt 0.1816 0.8691
|
||||
vt 0.2012 0.7949
|
||||
vt 0.1816 0.7949
|
||||
vt 0.2012 0.8691
|
||||
vt 0.2876 0.8193
|
||||
vt 0.2832 0.8887
|
||||
vt 0.3789 0.8384
|
||||
vt 0.0781 0.0045
|
||||
vt 0.0092 0.0162
|
||||
vt 0.0088 0.0767
|
||||
vt 0.0781 0.0278
|
||||
vt 0.0088 0.0767
|
||||
vt 0.0781 0.0767
|
||||
vt 0.0095 0.1275
|
||||
vt 0.0742 0.1275
|
||||
vt 0.0091 0.1729
|
||||
vt 0.0703 0.1729
|
||||
vt 0.0085 0.2250
|
||||
vt 0.0703 0.2250
|
||||
vt 0.0085 0.2794
|
||||
vt 0.0703 0.2794
|
||||
vt 0.0085 0.3397
|
||||
vt 0.0703 0.3397
|
||||
vt 0.0085 0.3978
|
||||
vt 0.0703 0.3978
|
||||
vt 0.0090 0.4788
|
||||
vt 0.0703 0.4788
|
||||
vt 0.0703 0.3978
|
||||
vt 0.1261 0.3978
|
||||
vt 0.1261 0.3397
|
||||
vt 0.0703 0.4795
|
||||
vt 0.1260 0.3984
|
||||
vt 0.1260 0.4795
|
||||
vt 0.0703 0.3984
|
||||
vt 0.1260 0.3398
|
||||
vt 0.0703 0.3398
|
||||
vt 0.1260 0.2803
|
||||
vt 0.0703 0.2803
|
||||
vt 0.1260 0.2256
|
||||
vt 0.0703 0.2256
|
||||
vt 0.1250 0.1738
|
||||
vt 0.0703 0.1738
|
||||
vt 0.1250 0.1279
|
||||
vt 0.0742 0.1279
|
||||
vt 0.1250 0.0772
|
||||
vt 0.0781 0.0772
|
||||
vt 0.0781 0.0283
|
||||
vt 0.0085 0.3978
|
||||
vt 0.0703 0.3397
|
||||
vt 0.0085 0.3397
|
||||
vt 0.0703 0.2794
|
||||
vt 0.0085 0.2794
|
||||
vt 0.0703 0.2250
|
||||
vt 0.0085 0.2250
|
||||
vt 0.0703 0.1729
|
||||
vt 0.0091 0.1729
|
||||
vt 0.0742 0.1275
|
||||
vt 0.0095 0.1275
|
||||
vt 0.0781 0.0767
|
||||
vt 0.0781 0.0278
|
||||
vt 0.1260 0.3398
|
||||
vt 0.0703 0.3398
|
||||
vt 0.0703 0.3979
|
||||
vt 0.1260 0.2798
|
||||
vt 0.0703 0.2798
|
||||
vt 0.1260 0.2251
|
||||
vt 0.0703 0.2251
|
||||
vt 0.1255 0.1738
|
||||
vt 0.0703 0.1733
|
||||
vt 0.1255 0.1279
|
||||
vt 0.0742 0.1279
|
||||
vt 0.1255 0.0772
|
||||
vt 0.1260 0.4790
|
||||
vt 0.1260 0.3979
|
||||
vt 0.0703 0.4790
|
||||
vt 0.0781 0.0049
|
||||
vt 0.1255 0.0161
|
||||
vt 0.1255 0.0049
|
||||
vt 0.1255 0.0278
|
||||
vt 0.1255 0.0772
|
||||
vt 0.1255 0.0278
|
||||
vt 0.7402 0.9668
|
||||
vt 0.7402 0.9082
|
||||
vt 0.8340 0.9668
|
||||
vt 0.6504 0.9082
|
||||
vt 0.6504 0.8418
|
||||
vt 0.5488 0.8496
|
||||
vt 0.9277 0.8027
|
||||
vt 0.9121 0.7480
|
||||
vt 0.9277 0.7480
|
||||
vt 0.9121 0.8027
|
||||
vt 0.9277 0.9082
|
||||
vt 0.9121 0.9082
|
||||
vt 0.9121 0.8027
|
||||
vt 0.9121 0.7480
|
||||
vt 0.8301 0.7480
|
||||
vt 0.1816 0.9668
|
||||
vt 0.2363 0.9668
|
||||
vt 0.5996 0.9668
|
||||
vt 0.4902 0.9668
|
||||
vt 0.5488 0.9082
|
||||
vt 0.4121 0.9668
|
||||
vt 0.3301 0.9668
|
||||
vt 0.3769 0.9004
|
||||
vt 0.4668 0.9043
|
||||
vt 0.2754 0.9668
|
||||
vt 0.2363 0.9668
|
||||
vt 0.2832 0.8887
|
||||
vt 0.8301 0.7480
|
||||
vt 0.8301 0.8027
|
||||
vt 0.7402 0.7715
|
||||
vt 0.4707 0.8496
|
||||
vt 0.8340 0.9668
|
||||
vt 0.9277 0.9668
|
||||
vt 0.9121 0.9082
|
||||
vt 0.1348 0.6621
|
||||
vt 0.1123 0.6060
|
||||
vt 0.1035 0.6035
|
||||
vt 0.1196 0.6299
|
||||
vt 0.1035 0.6035
|
||||
vt 0.1025 0.6313
|
||||
vt 0.0864 0.5913
|
||||
vt 0.0791 0.6289
|
||||
vt 0.0449 0.5894
|
||||
vt 0.0547 0.6270
|
||||
vt 0.0288 0.6631
|
||||
vt 0.0439 0.6611
|
||||
vt 0.0337 0.6714
|
||||
vt 0.0947 0.6841
|
||||
vt 0.1025 0.6699
|
||||
vt 0.0923 0.6773
|
||||
vt 0.1035 0.6743
|
||||
vt 0.1265 0.6685
|
||||
vt 0.1269 0.6733
|
||||
vt 0.1206 0.6533
|
||||
vt 0.0833 0.6685
|
||||
vt 0.0442 0.6611
|
||||
vt 0.0923 0.6773
|
||||
vt 0.0339 0.6714
|
||||
vt 0.0947 0.6838
|
||||
vt 0.0286 0.6775
|
||||
vt 0.0830 0.6685
|
||||
vt 0.1011 0.6602
|
||||
vt 0.0684 0.6001
|
||||
vt 0.1074 0.6001
|
||||
vt 0.1074 0.6001
|
||||
vt 0.0283 0.6777
|
||||
vt 0.8301 0.9082
|
||||
vt 0.7402 0.8184
|
||||
vt 0.6504 0.8105
|
||||
vt 0.2754 0.9668
|
||||
vt 0.3301 0.9668
|
||||
vt 0.4121 0.9668
|
||||
vt 0.4902 0.9668
|
||||
vt 0.5996 0.9668
|
||||
vt 0.7402 0.9668
|
||||
vt 0.7402 0.7715
|
||||
vt 0.3789 0.8384
|
||||
vt 0.2876 0.8191
|
||||
vt 0.6504 0.8105
|
||||
vn 0.9297 -0.3603 0.0761
|
||||
vn -0.7374 -0.5350 0.4123
|
||||
vn -0.0008 -0.8953 -0.4454
|
||||
vn 0.9769 0.2059 -0.0573
|
||||
vn -0.9301 -0.0845 0.3575
|
||||
vn 0.9702 0.2421 0.0129
|
||||
vn -0.9491 -0.0067 0.3149
|
||||
vn 0.9802 0.0819 0.1804
|
||||
vn -0.8456 0.4759 0.2418
|
||||
vn 0.7925 -0.6027 0.0930
|
||||
vn -0.7538 0.6475 -0.1120
|
||||
vn 0.2549 -0.8078 -0.5315
|
||||
vn 0.9770 0.1511 0.1507
|
||||
vn 0.9781 -0.1599 0.1331
|
||||
vn 0.0325 -0.2064 -0.9779
|
||||
vn 0.9643 0.2514 0.0838
|
||||
vn 0.0077 -0.1928 -0.9812
|
||||
vn 0.8578 0.5036 0.1026
|
||||
vn 0.0920 -0.2614 -0.9608
|
||||
vn 0.8090 0.5630 0.1690
|
||||
vn 0.4268 -0.1419 -0.8932
|
||||
vn -0.9432 -0.1279 0.3066
|
||||
vn -0.8733 -0.2763 0.4012
|
||||
vn -0.9839 -0.0485 0.1721
|
||||
vn -0.9785 -0.1495 0.1423
|
||||
vn -0.6573 -0.6919 0.2988
|
||||
vn -0.1639 -0.2322 -0.9588
|
||||
vn -0.1403 -0.2244 -0.9643
|
||||
vn -0.2568 -0.3008 -0.9185
|
||||
vn -0.4195 -0.2138 -0.8822
|
||||
vn -0.8775 0.3480 0.3299
|
||||
vn -0.9034 0.2329 0.3601
|
||||
vn -0.5191 0.3895 0.7608
|
||||
vn -0.9663 0.2361 -0.1026
|
||||
vn -0.9820 0.1296 -0.1374
|
||||
vn -0.8388 0.1996 -0.5065
|
||||
vn -0.7711 0.0777 -0.6320
|
||||
vn -0.5011 0.1859 -0.8452
|
||||
vn -0.4667 0.0044 -0.8844
|
||||
vn -0.1992 0.1506 -0.9683
|
||||
vn -0.1414 -0.0278 -0.9896
|
||||
vn -0.3494 0.0796 0.9336
|
||||
vn 0.2111 0.2129 0.9540
|
||||
vn -0.2410 0.2204 0.9452
|
||||
vn 0.0312 0.1670 0.9855
|
||||
vn 0.4978 0.1194 0.8591
|
||||
vn 0.1664 0.1162 0.9792
|
||||
vn 0.3406 0.2416 0.9086
|
||||
vn -0.0415 0.2108 0.9767
|
||||
vn -0.1507 0.3465 0.9259
|
||||
vn -0.5260 0.2809 0.8028
|
||||
vn 0.0711 -0.1967 0.9779
|
||||
vn 0.1061 0.0943 0.9899
|
||||
vn -0.0957 0.0813 0.9921
|
||||
vn 0.1332 -0.1891 0.9729
|
||||
vn 0.2775 0.0980 0.9557
|
||||
vn 0.2883 -0.1880 0.9389
|
||||
vn 0.5285 0.0424 0.8479
|
||||
vn 0.5169 -0.1835 0.8361
|
||||
vn 0.7707 0.0158 0.6370
|
||||
vn 0.7593 -0.1890 0.6227
|
||||
vn 0.9562 0.0823 0.2808
|
||||
vn 0.9570 -0.0263 0.2888
|
||||
vn 0.9501 0.1350 -0.2811
|
||||
vn 0.9550 0.0171 -0.2961
|
||||
vn 0.5216 0.1137 -0.8456
|
||||
vn 0.5357 -0.0300 -0.8438
|
||||
vn 0.1133 0.1364 -0.9841
|
||||
vn 0.1157 -0.0216 -0.9930
|
||||
vn -0.1085 0.1388 -0.9844
|
||||
vn -0.1012 -0.0303 -0.9944
|
||||
vn -0.2997 -0.0390 -0.9532
|
||||
vn -0.2769 0.0219 -0.9607
|
||||
vn -0.5740 0.0563 -0.8170
|
||||
vn 0.0840 0.0356 -0.9958
|
||||
vn -0.1054 -0.0185 -0.9943
|
||||
vn 0.4872 0.1244 -0.8644
|
||||
vn 0.9359 0.2128 -0.2807
|
||||
vn 0.9318 0.2234 0.2860
|
||||
vn 0.7537 0.0970 0.6500
|
||||
vn 0.5236 0.0544 0.8502
|
||||
vn 0.2983 -0.0211 0.9543
|
||||
vn -0.3113 0.1059 -0.9444
|
||||
vn -0.6006 -0.0783 -0.7957
|
||||
vn -0.6147 0.0396 -0.7878
|
||||
vn -0.9271 -0.0787 -0.3665
|
||||
vn -0.9347 0.0211 -0.3547
|
||||
vn -0.9734 -0.1395 0.1815
|
||||
vn -0.9864 -0.0246 0.1627
|
||||
vn -0.7374 -0.2914 0.6093
|
||||
vn -0.7777 -0.0750 0.6242
|
||||
vn -0.4050 -0.2564 0.8776
|
||||
vn -0.4215 -0.0104 0.9068
|
||||
vn -0.1167 -0.2213 0.9682
|
||||
vn -0.9221 0.0835 -0.3779
|
||||
vn -0.9780 0.1216 0.1698
|
||||
vn -0.7549 0.0302 0.6552
|
||||
vn -0.4108 0.0030 0.9117
|
||||
vn -0.1012 -0.0536 0.9934
|
||||
vn 0.1045 -0.0330 0.9940
|
||||
vn 0.0520 -0.0545 0.9972
|
||||
vn 0.1522 -0.0453 0.9873
|
||||
vn 0.4019 0.2693 -0.8752
|
||||
vn 0.8355 0.3345 -0.4359
|
||||
vn 0.7656 0.1959 -0.6128
|
||||
vn 0.9669 0.2548 0.0130
|
||||
vn -0.0006 -0.0802 -0.9968
|
||||
vn -0.5572 -0.1510 -0.8165
|
||||
vn 0.0778 -0.1525 -0.9852
|
||||
vn -0.4502 -0.0732 -0.8899
|
||||
vn -0.0356 0.0583 -0.9977
|
||||
vn -0.3620 0.0675 -0.9297
|
||||
vn 0.3677 -0.0360 -0.9293
|
||||
vn 0.3521 -0.1171 -0.9286
|
||||
vn -0.0933 -0.1052 -0.9901
|
||||
vn 0.9345 0.3523 0.0504
|
||||
vn 0.5591 0.4052 0.7233
|
||||
vn 0.8201 0.4084 0.4007
|
||||
vn 0.2999 0.3523 0.8865
|
||||
vn -0.1162 -0.0923 -0.9889
|
||||
vn -0.0504 -0.0067 -0.9987
|
||||
vn 0.2237 -0.0403 -0.9738
|
||||
vn 0.8555 0.3033 0.4196
|
||||
vn 0.2438 0.1115 -0.9634
|
||||
vn 0.9517 -0.2897 0.1019
|
||||
vn 0.5076 -0.7495 0.4250
|
||||
vn 0.4330 -0.8976 -0.0828
|
||||
vn 0.6291 -0.1810 0.7560
|
||||
vn 0.6579 -0.5707 0.4914
|
||||
vn 0.7171 -0.0948 0.6905
|
||||
vn 0.5111 -0.7906 0.3373
|
||||
vn 0.5590 -0.2132 0.8013
|
||||
vn -0.4017 -0.8672 0.2941
|
||||
vn -0.5229 -0.3794 0.7633
|
||||
vn -0.9170 -0.3923 -0.0717
|
||||
vn -0.6736 0.2392 0.6993
|
||||
vn -0.7644 0.5781 0.2854
|
||||
vn 0.4873 0.7961 0.3587
|
||||
vn 0.6188 0.7855 0.0072
|
||||
vn 0.5705 0.8112 0.1283
|
||||
vn 0.7243 0.6425 0.2503
|
||||
vn 0.8196 0.5727 0.0147
|
||||
vn 0.7071 0.6310 0.3191
|
||||
vn 0.7139 0.1808 0.6765
|
||||
vn 0.5360 0.4018 0.7425
|
||||
vn -0.7996 0.5990 0.0440
|
||||
vn 0.7183 0.3345 0.6100
|
||||
vn -0.3606 -0.9216 -0.1440
|
||||
vn 0.0194 0.1680 -0.9856
|
||||
vn 0.3806 0.0603 -0.9228
|
||||
vn 0.6510 0.0555 -0.7571
|
||||
vn -0.3632 -0.0757 -0.9286
|
||||
vn 0.5802 0.3029 0.7560
|
||||
vn -0.6789 -0.0046 -0.7342
|
||||
usemtl pants.png
|
||||
s 1
|
||||
f 1/1/1 2/2/2 3/3/3
|
||||
f 4/4/4 2/2/2 1/1/1
|
||||
f 4/4/4 5/5/5 2/2/2
|
||||
f 6/6/6 5/5/5 4/4/4
|
||||
f 6/6/6 7/7/7 5/5/5
|
||||
f 8/8/8 7/7/7 6/6/6
|
||||
f 8/8/8 9/9/9 7/7/7
|
||||
f 10/10/10 9/9/9 8/8/8
|
||||
f 10/10/10 11/11/11 9/9/9
|
||||
f 12/12/12 13/13/13 14/14/14
|
||||
f 15/15/15 13/13/13 12/12/12
|
||||
f 15/15/15 16/16/16 13/13/13
|
||||
f 17/17/17 16/16/16 15/15/15
|
||||
f 17/17/17 18/18/18 16/16/16
|
||||
f 19/19/19 18/18/18 17/17/17
|
||||
f 19/19/19 20/20/20 18/18/18
|
||||
f 21/21/21 20/20/20 19/19/19
|
||||
f 21/21/21 22/22/22 23/23/23
|
||||
f 19/19/19 22/22/22 21/21/21
|
||||
f 19/19/19 24/24/24 22/22/22
|
||||
f 17/17/17 24/24/24 19/19/19
|
||||
f 17/17/17 25/25/25 24/24/24
|
||||
f 15/15/15 25/25/25 17/17/17
|
||||
f 15/15/15 26/26/26 25/25/25
|
||||
f 12/12/12 26/26/26 15/15/15
|
||||
f 2/2/2 27/27/27 3/3/3
|
||||
f 5/5/5 27/27/27 2/2/2
|
||||
f 5/5/5 28/28/28 27/27/27
|
||||
f 7/7/7 28/28/28 5/5/5
|
||||
f 7/7/7 29/29/29 28/28/28
|
||||
f 9/9/9 29/29/29 7/7/7
|
||||
f 9/9/9 30/30/30 29/29/29
|
||||
f 11/11/11 30/30/30 9/9/9
|
||||
f 14/14/14 25/25/25 26/26/26
|
||||
f 13/13/13 25/25/25 14/14/14
|
||||
f 13/13/13 24/24/24 25/25/25
|
||||
f 16/16/16 24/24/24 13/13/13
|
||||
f 16/16/16 22/22/22 24/24/24
|
||||
f 18/18/18 22/22/22 16/16/16
|
||||
f 18/18/18 23/23/23 22/22/22
|
||||
f 20/20/20 23/23/23 18/18/18
|
||||
f 8/8/8 29/29/29 30/30/30
|
||||
f 6/6/6 29/29/29 8/8/8
|
||||
f 6/6/6 28/28/28 29/29/29
|
||||
f 4/4/4 28/28/28 6/6/6
|
||||
f 4/4/4 27/27/27 28/28/28
|
||||
f 1/1/1 27/27/27 4/4/4
|
||||
f 1/1/1 3/3/3 27/27/27
|
||||
f 10/10/10 8/8/8 30/30/30
|
||||
f 14/14/14 26/26/26 12/12/12
|
||||
f 31/31/31 32/32/32 33/33/33
|
||||
f 34/34/34 32/32/32 31/31/31
|
||||
f 34/34/34 35/35/35 32/32/32
|
||||
f 36/36/36 35/35/35 34/34/34
|
||||
f 36/36/36 37/37/37 35/35/35
|
||||
f 38/38/38 37/37/37 36/36/36
|
||||
f 38/38/38 39/39/39 37/37/37
|
||||
f 40/40/40 39/39/39 38/38/38
|
||||
f 40/40/40 41/41/41 39/39/39
|
||||
f 42/42/42 43/43/43 44/44/44
|
||||
f 45/45/45 46/46/46 47/47/47
|
||||
f 48/48/48 46/46/46 45/45/45
|
||||
f 48/48/48 49/49/49 46/46/46
|
||||
f 50/50/50 49/49/49 48/48/48
|
||||
f 50/50/50 51/51/51 49/49/49
|
||||
f 33/33/33 51/51/51 50/50/50
|
||||
f 33/33/33 32/32/32 51/51/51
|
||||
f 52/52/52 53/53/53 54/54/54
|
||||
f 55/55/55 53/53/53 52/52/52
|
||||
f 55/55/55 56/56/56 53/53/53
|
||||
f 57/57/57 56/56/56 55/55/55
|
||||
f 57/57/57 58/58/58 56/56/56
|
||||
f 59/59/59 58/58/58 57/57/57
|
||||
f 59/59/59 60/60/60 58/58/58
|
||||
f 61/61/61 60/60/60 59/59/59
|
||||
f 61/61/61 62/62/62 60/60/60
|
||||
f 63/63/63 62/62/62 61/61/61
|
||||
f 63/63/63 64/64/64 62/62/62
|
||||
f 65/65/65 64/64/64 63/63/63
|
||||
f 65/65/65 66/66/66 64/64/64
|
||||
f 67/67/67 66/66/66 65/65/65
|
||||
f 67/67/67 68/68/68 66/66/66
|
||||
f 69/69/69 68/68/68 67/67/67
|
||||
f 69/69/69 70/70/70 68/68/68
|
||||
f 71/71/71 70/70/70 69/69/69
|
||||
f 71/71/71 72/72/72 70/70/70
|
||||
f 73/73/73 72/72/72 71/71/71
|
||||
f 73/73/73 74/74/74 72/72/72
|
||||
f 71/75/71 75/76/75 76/77/76
|
||||
f 69/78/69 75/76/75 71/75/71
|
||||
f 69/78/69 77/79/77 75/76/75
|
||||
f 67/80/67 77/79/77 69/78/69
|
||||
f 67/80/67 78/81/78 77/79/77
|
||||
f 65/82/65 78/81/78 67/80/67
|
||||
f 65/82/65 79/83/79 78/81/78
|
||||
f 63/84/63 79/83/79 65/82/65
|
||||
f 63/84/63 80/85/80 79/83/79
|
||||
f 61/86/61 80/85/80 63/84/63
|
||||
f 61/86/61 81/87/81 80/85/80
|
||||
f 59/88/59 81/87/81 61/86/61
|
||||
f 59/88/59 82/89/82 81/87/81
|
||||
f 57/90/57 82/89/82 59/88/59
|
||||
f 57/90/57 55/91/55 82/89/82
|
||||
f 72/72/72 83/92/83 70/70/70
|
||||
f 84/93/84 83/92/83 72/72/72
|
||||
f 84/93/84 85/94/85 83/92/83
|
||||
f 86/95/86 85/94/85 84/93/84
|
||||
f 86/95/86 87/96/87 85/94/85
|
||||
f 88/97/88 87/96/87 86/95/86
|
||||
f 88/97/88 89/98/89 87/96/87
|
||||
f 90/99/90 89/98/89 88/97/88
|
||||
f 90/99/90 91/100/91 89/98/89
|
||||
f 92/101/92 91/100/91 90/99/90
|
||||
f 92/101/92 93/102/93 91/100/91
|
||||
f 94/103/94 93/102/93 92/101/92
|
||||
f 94/103/94 54/54/54 93/102/93
|
||||
f 52/104/52 54/54/54 94/103/94
|
||||
f 74/105/74 84/106/84 72/107/72
|
||||
f 95/108/95 84/106/84 74/105/74
|
||||
f 95/108/95 86/109/86 84/106/84
|
||||
f 96/110/96 86/109/86 95/108/95
|
||||
f 96/110/96 88/111/88 86/109/86
|
||||
f 97/112/97 88/111/88 96/110/96
|
||||
f 97/112/97 90/113/90 88/111/88
|
||||
f 98/114/98 90/113/90 97/112/97
|
||||
f 98/114/98 92/115/92 90/113/90
|
||||
f 99/116/99 92/115/92 98/114/98
|
||||
f 99/116/99 94/103/94 92/115/92
|
||||
f 52/104/52 94/103/94 99/116/99
|
||||
f 76/117/76 73/118/73 71/119/71
|
||||
f 52/120/52 100/121/100 55/55/55
|
||||
f 101/122/101 100/121/100 52/120/52
|
||||
f 102/123/102 82/124/82 55/55/55
|
||||
f 102/123/102 55/55/55 100/121/100
|
||||
f 101/125/101 52/104/52 99/116/99
|
||||
f 77/126/77 103/127/103 75/128/75
|
||||
f 104/129/104 103/127/103 77/126/77
|
||||
f 104/129/104 105/130/105 103/127/103
|
||||
f 106/131/106 105/130/105 104/129/104
|
||||
f 107/132/107 108/133/108 109/134/109
|
||||
f 107/132/107 110/135/110 108/133/108
|
||||
f 111/136/111 110/135/110 107/132/107
|
||||
f 111/136/111 112/137/112 110/135/110
|
||||
f 107/132/107 113/138/113 111/136/111
|
||||
f 114/139/114 113/138/113 107/132/107
|
||||
f 114/139/114 115/140/115 113/138/113
|
||||
f 48/48/48 45/45/45 100/141/100
|
||||
f 101/142/101 48/48/48 100/141/100
|
||||
f 48/48/48 101/142/101 50/50/50
|
||||
f 78/143/78 79/144/79 116/145/116
|
||||
f 116/145/116 106/131/106 104/129/104
|
||||
f 80/146/80 81/147/81 117/148/117
|
||||
f 117/148/117 118/149/118 80/146/80
|
||||
f 82/150/82 102/151/102 119/152/119
|
||||
f 78/143/78 104/129/104 77/126/77
|
||||
f 104/129/104 78/143/78 116/145/116
|
||||
f 120/153/120 121/154/121 122/155/122
|
||||
f 118/149/118 117/148/117 123/156/123
|
||||
f 73/157/73 76/158/76 124/159/124
|
||||
f 125/160/125 126/161/126 127/162/127
|
||||
f 128/163/128 126/161/126 125/160/125
|
||||
f 128/163/128 129/164/129 126/161/126
|
||||
f 130/165/130 129/164/129 128/163/128
|
||||
f 130/165/130 131/166/131 129/164/129
|
||||
f 132/167/132 131/166/131 130/165/130
|
||||
f 132/167/132 133/168/133 131/166/131
|
||||
f 134/169/134 133/168/133 132/167/132
|
||||
f 134/169/134 135/170/135 133/168/133
|
||||
f 136/171/136 135/170/135 134/169/134
|
||||
f 136/171/136 137/172/137 135/170/135
|
||||
f 138/173/138 139/174/139 140/175/140
|
||||
f 141/176/141 139/174/139 138/173/138
|
||||
f 141/176/141 142/177/142 139/174/139
|
||||
f 143/178/143 142/177/142 141/176/141
|
||||
f 143/178/143 125/160/125 142/177/142
|
||||
f 144/179/144 125/160/125 143/178/143
|
||||
f 144/179/144 128/163/128 125/160/125
|
||||
f 130/165/130 128/163/128 144/179/144
|
||||
f 145/180/145 136/181/136 134/169/134
|
||||
f 138/182/138 136/181/136 145/180/145
|
||||
f 138/182/138 137/183/137 136/181/136
|
||||
f 140/184/140 137/183/137 138/182/138
|
||||
f 140/184/140 146/185/146 137/183/137
|
||||
f 145/186/145 141/176/141 138/182/138
|
||||
f 147/187/147 141/176/141 145/186/145
|
||||
f 147/187/147 143/178/143 141/176/141
|
||||
f 144/179/144 143/178/143 147/187/147
|
||||
f 148/188/148 127/162/127 131/166/131
|
||||
f 129/164/129 127/189/127 126/161/126
|
||||
f 133/168/133 148/188/148 131/166/131
|
||||
f 129/190/129 131/166/131 127/162/127
|
||||
f 146/191/146 135/170/135 137/172/137
|
||||
f 130/165/130 147/187/147 132/167/132
|
||||
f 132/167/132 145/186/145 134/169/134
|
||||
f 147/187/147 130/165/130 144/179/144
|
||||
f 145/186/145 132/167/132 147/187/147
|
||||
f 148/188/148 133/168/133 135/170/135
|
||||
f 149/192/149 121/154/121 112/137/112
|
||||
f 150/193/150 121/154/121 149/192/149
|
||||
f 150/193/150 122/155/122 121/154/121
|
||||
f 151/194/151 122/155/122 150/193/150
|
||||
f 116/145/116 123/156/123 106/131/106
|
||||
f 116/145/116 118/149/118 123/156/123
|
||||
f 79/144/79 118/149/118 116/145/116
|
||||
f 79/144/79 80/146/80 118/149/118
|
||||
f 99/195/99 50/50/50 101/142/101
|
||||
f 98/196/98 50/50/50 99/195/99
|
||||
f 98/196/98 33/33/33 50/50/50
|
||||
f 97/197/97 33/33/33 98/196/98
|
||||
f 97/197/97 31/31/31 33/33/33
|
||||
f 96/198/96 31/31/31 97/197/97
|
||||
f 96/198/96 34/34/34 31/31/31
|
||||
f 95/199/95 34/34/34 96/198/96
|
||||
f 95/199/95 36/36/36 34/34/34
|
||||
f 74/200/74 36/36/36 95/199/95
|
||||
f 74/200/74 38/38/38 36/36/36
|
||||
f 73/157/73 38/38/38 74/200/74
|
||||
f 73/157/73 40/40/40 38/38/38
|
||||
f 124/159/124 40/40/40 73/157/73
|
||||
f 124/159/124 41/41/41 40/40/40
|
||||
f 150/193/150 105/130/105 151/194/151
|
||||
f 150/193/150 103/127/103 105/130/105
|
||||
f 149/192/149 103/127/103 150/193/150
|
||||
f 149/192/149 75/128/75 103/127/103
|
||||
f 112/137/112 75/128/75 149/192/149
|
||||
f 112/137/112 76/158/76 75/128/75
|
||||
f 111/136/111 76/158/76 112/137/112
|
||||
f 111/136/111 124/159/124 76/158/76
|
||||
f 113/138/113 124/159/124 111/136/111
|
||||
f 113/138/113 41/41/41 124/159/124
|
||||
f 115/140/115 41/41/41 113/138/113
|
||||
f 115/140/115 152/201/152 41/41/41
|
||||
f 117/148/117 153/202/153 123/156/123
|
||||
f 117/148/117 119/152/119 153/202/153
|
||||
f 81/147/81 119/152/119 117/148/117
|
||||
f 81/147/81 82/150/82 119/152/119
|
||||
f 107/132/107 109/134/109 114/139/114
|
||||
f 119/152/119 43/203/43 153/202/153
|
||||
f 119/152/119 44/44/44 43/203/43
|
||||
f 102/151/102 44/44/44 119/152/119
|
||||
f 102/151/102 100/141/100 44/44/44
|
||||
f 121/154/121 110/135/110 112/137/112
|
||||
f 120/153/120 110/135/110 121/154/121
|
||||
f 120/153/120 108/133/108 110/135/110
|
||||
f 152/201/152 39/39/39 41/41/41
|
||||
f 154/204/154 39/39/39 152/201/152
|
||||
f 154/204/154 37/37/37 39/39/39
|
||||
f 42/42/42 45/45/45 47/47/47
|
||||
f 44/44/44 45/45/45 42/42/42
|
||||
f 44/44/44 100/141/100 45/45/45
|
|
@ -1,8 +1,8 @@
|
|||
# Blender MTL File: 'goku_foot.blend'
|
||||
# Blender MTL File: 'Full_remake.blend'
|
||||
# Material Count: 2
|
||||
|
||||
newmtl face.png
|
||||
Ns 94.117647
|
||||
newmtl face.png.007
|
||||
Ns 92.156863
|
||||
Ka 0.000000 0.000000 0.000000
|
||||
Kd 0.800000 0.800000 0.800000
|
||||
Ks 0.250000 0.250000 0.250000
|
||||
|
@ -12,8 +12,8 @@ d 1.000000
|
|||
illum 2
|
||||
map_Kd face.png
|
||||
|
||||
newmtl pants.png
|
||||
Ns 94.117647
|
||||
newmtl pants.png.008
|
||||
Ns 92.156863
|
||||
Ka 0.000000 0.000000 0.000000
|
||||
Kd 0.800000 0.800000 0.800000
|
||||
Ks 0.250000 0.250000 0.250000
|
|
@ -1,8 +1,8 @@
|
|||
# Blender MTL File: 'goku_legs.blend'
|
||||
# Blender MTL File: 'Full_remake.blend'
|
||||
# Material Count: 2
|
||||
|
||||
newmtl face.png
|
||||
Ns 94.117647
|
||||
newmtl face.png.006
|
||||
Ns 92.156863
|
||||
Ka 0.000000 0.000000 0.000000
|
||||
Kd 0.800000 0.800000 0.800000
|
||||
Ks 0.250000 0.250000 0.250000
|
||||
|
@ -12,8 +12,8 @@ d 1.000000
|
|||
illum 2
|
||||
map_Kd face.png
|
||||
|
||||
newmtl pants.png
|
||||
Ns 94.117647
|
||||
newmtl pants.png.007
|
||||
Ns 92.156863
|
||||
Ka 0.000000 0.000000 0.000000
|
||||
Kd 0.800000 0.800000 0.800000
|
||||
Ks 0.250000 0.250000 0.250000
|
|
@ -1,57 +0,0 @@
|
|||
# Blender MTL File: 'goku_full.blend'
|
||||
# Material Count: 5
|
||||
|
||||
newmtl eyes.png
|
||||
Ns 94.117647
|
||||
Ka 0.000000 0.000000 0.000000
|
||||
Kd 0.800000 0.800000 0.800000
|
||||
Ks 0.250000 0.250000 0.250000
|
||||
Ke 0.000000 0.000000 0.000000
|
||||
Ni 1.000000
|
||||
d 1.000000
|
||||
illum 2
|
||||
map_Kd eyes.png
|
||||
|
||||
newmtl face.png
|
||||
Ns 94.117647
|
||||
Ka 0.000000 0.000000 0.000000
|
||||
Kd 0.800000 0.800000 0.800000
|
||||
Ks 0.250000 0.250000 0.250000
|
||||
Ke 0.000000 0.000000 0.000000
|
||||
Ni 1.000000
|
||||
d 1.000000
|
||||
illum 2
|
||||
map_Kd face.png
|
||||
|
||||
newmtl hair.png
|
||||
Ns 94.117647
|
||||
Ka 0.000000 0.000000 0.000000
|
||||
Kd 0.027208 0.027208 0.027208
|
||||
Ks 0.024625 0.024625 0.024625
|
||||
Ke 0.000000 0.000000 0.000000
|
||||
Ni 1.000000
|
||||
d 1.000000
|
||||
illum 2
|
||||
map_Kd hair.png
|
||||
|
||||
newmtl pants.png
|
||||
Ns 94.117647
|
||||
Ka 0.000000 0.000000 0.000000
|
||||
Kd 0.800000 0.800000 0.800000
|
||||
Ks 0.250000 0.250000 0.250000
|
||||
Ke 0.000000 0.000000 0.000000
|
||||
Ni 1.000000
|
||||
d 1.000000
|
||||
illum 2
|
||||
map_Kd pants.png
|
||||
|
||||
newmtl shirt.png
|
||||
Ns 94.117647
|
||||
Ka 0.000000 0.000000 0.000000
|
||||
Kd 0.800000 0.800000 0.800000
|
||||
Ks 0.250000 0.250000 0.250000
|
||||
Ke 0.000000 0.000000 0.000000
|
||||
Ni 1.000000
|
||||
d 1.000000
|
||||
illum 2
|
||||
map_Kd shirt.png
|
|
@ -1,8 +1,8 @@
|
|||
# Blender MTL File: 'goku_handL.blend'
|
||||
# Blender MTL File: 'Full_remake.blend'
|
||||
# Material Count: 3
|
||||
|
||||
newmtl face.png
|
||||
Ns 94.117647
|
||||
newmtl face.png.004
|
||||
Ns 92.156863
|
||||
Ka 0.000000 0.000000 0.000000
|
||||
Kd 0.800000 0.800000 0.800000
|
||||
Ks 0.250000 0.250000 0.250000
|
||||
|
@ -12,8 +12,8 @@ d 1.000000
|
|||
illum 2
|
||||
map_Kd face.png
|
||||
|
||||
newmtl pants.png
|
||||
Ns 94.117647
|
||||
newmtl pants.png.003
|
||||
Ns 92.156863
|
||||
Ka 0.000000 0.000000 0.000000
|
||||
Kd 0.800000 0.800000 0.800000
|
||||
Ks 0.250000 0.250000 0.250000
|
||||
|
@ -23,8 +23,8 @@ d 1.000000
|
|||
illum 2
|
||||
map_Kd pants.png
|
||||
|
||||
newmtl shirt.png
|
||||
Ns 94.117647
|
||||
newmtl shirt.png.004
|
||||
Ns 92.156863
|
||||
Ka 0.000000 0.000000 0.000000
|
||||
Kd 0.800000 0.800000 0.800000
|
||||
Ks 0.250000 0.250000 0.250000
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
# Blender MTL File: 'goku_handR.blend'
|
||||
# Blender MTL File: 'Full_remake.blend'
|
||||
# Material Count: 3
|
||||
|
||||
newmtl face.png
|
||||
Ns 94.117647
|
||||
newmtl face.png.005
|
||||
Ns 92.156863
|
||||
Ka 0.000000 0.000000 0.000000
|
||||
Kd 0.800000 0.800000 0.800000
|
||||
Ks 0.250000 0.250000 0.250000
|
||||
|
@ -12,8 +12,8 @@ d 1.000000
|
|||
illum 2
|
||||
map_Kd face.png
|
||||
|
||||
newmtl pants.png
|
||||
Ns 94.117647
|
||||
newmtl pants.png.004
|
||||
Ns 92.156863
|
||||
Ka 0.000000 0.000000 0.000000
|
||||
Kd 0.800000 0.800000 0.800000
|
||||
Ks 0.250000 0.250000 0.250000
|
||||
|
@ -23,10 +23,10 @@ d 1.000000
|
|||
illum 2
|
||||
map_Kd pants.png
|
||||
|
||||
newmtl shirt.png
|
||||
Ns 94.117647
|
||||
newmtl shirt.png.005
|
||||
Ns 92.156863
|
||||
Ka 0.000000 0.000000 0.000000
|
||||
Kd 1.000000 0.617207 0.417885
|
||||
Kd 0.800000 0.800000 0.800000
|
||||
Ks 0.250000 0.250000 0.250000
|
||||
Ke 0.000000 0.000000 0.000000
|
||||
Ni 1.000000
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
# Blender MTL File: 'goku_head.blend'
|
||||
# Blender MTL File: 'Full_remake.blend'
|
||||
# Material Count: 4
|
||||
|
||||
newmtl eyes.png
|
||||
Ns 94.117647
|
||||
Ns 92.156863
|
||||
Ka 0.000000 0.000000 0.000000
|
||||
Kd 0.800000 0.800000 0.800000
|
||||
Ks 0.250000 0.250000 0.250000
|
||||
|
@ -12,8 +12,8 @@ d 1.000000
|
|||
illum 2
|
||||
map_Kd eyes.png
|
||||
|
||||
newmtl face.png
|
||||
Ns 94.117647
|
||||
newmtl face.png.001
|
||||
Ns 92.156863
|
||||
Ka 0.000000 0.000000 0.000000
|
||||
Kd 0.800000 0.800000 0.800000
|
||||
Ks 0.250000 0.250000 0.250000
|
||||
|
@ -24,7 +24,7 @@ illum 2
|
|||
map_Kd face.png
|
||||
|
||||
newmtl hair.png
|
||||
Ns 94.117647
|
||||
Ns 92.156863
|
||||
Ka 0.000000 0.000000 0.000000
|
||||
Kd 0.027208 0.027208 0.027208
|
||||
Ks 0.024625 0.024625 0.024625
|
||||
|
@ -34,8 +34,8 @@ d 1.000000
|
|||
illum 2
|
||||
map_Kd hair.png
|
||||
|
||||
newmtl shirt.png
|
||||
Ns 94.117647
|
||||
newmtl shirt.png.001
|
||||
Ns 92.156863
|
||||
Ka 0.000000 0.000000 0.000000
|
||||
Kd 0.800000 0.800000 0.800000
|
||||
Ks 0.250000 0.250000 0.250000
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
# Blender MTL File: 'goku_legL.blend'
|
||||
# Blender MTL File: 'Full_remake.blend'
|
||||
# Material Count: 1
|
||||
|
||||
newmtl pants.png
|
||||
Ns 94.117647
|
||||
newmtl pants.png.005
|
||||
Ns 92.156863
|
||||
Ka 0.000000 0.000000 0.000000
|
||||
Kd 0.800000 0.800000 0.800000
|
||||
Ks 0.250000 0.250000 0.250000
|
||||
|
|
|
@ -1,98 +1,100 @@
|
|||
# Blender v2.78 (sub 0) OBJ File: 'goku_legL.blend'
|
||||
# Blender v2.78 (sub 0) OBJ File: 'Full_remake.blend'
|
||||
# www.blender.org
|
||||
mtllib goku_legL.mtl
|
||||
o Mesh.404_DrawCall_231
|
||||
v 0.424893 -10.608627 4.949482
|
||||
v 2.236749 -10.923356 2.956954
|
||||
v 1.169725 -9.011127 -0.536196
|
||||
v 2.509670 -8.868757 1.008370
|
||||
v 1.049754 -8.268933 -0.005599
|
||||
v 1.336176 -7.799356 -0.805991
|
||||
v 2.665817 -7.434734 0.781920
|
||||
v 1.501240 -5.455472 -1.018057
|
||||
v 2.770802 -5.046062 0.535011
|
||||
v 2.838188 -3.110165 0.227148
|
||||
v -1.588822 1.188293 -0.093029
|
||||
v -1.166129 1.249268 0.275240
|
||||
v -3.113583 -0.984687 2.190746
|
||||
v -1.514320 -1.537658 4.393212
|
||||
v -2.640762 -1.843260 3.331730
|
||||
v -1.555381 -3.301793 4.753983
|
||||
v -2.541874 -3.484594 3.894073
|
||||
v -1.607124 -5.540161 5.168834
|
||||
v -0.888409 1.444823 -1.392287
|
||||
v 0.170019 2.047507 -0.962185
|
||||
v 0.781002 2.110733 -1.081212
|
||||
v 0.111911 -2.952235 -2.014582
|
||||
v 1.661732 -3.315480 -1.315830
|
||||
v -0.361378 -5.381123 -1.299529
|
||||
v 1.400618 -0.598601 -1.848615
|
||||
v 2.924168 -0.350000 -0.431315
|
||||
v 1.129401 1.959420 -0.423583
|
||||
v 0.997167 1.953464 0.024818
|
||||
v 0.895570 2.129233 0.449503
|
||||
v 0.611979 1.588895 0.574292
|
||||
v 2.639492 -2.567126 2.103298
|
||||
v -2.738574 -11.042049 2.151810
|
||||
v -2.548887 -10.313929 0.389402
|
||||
v -2.808148 -11.313427 1.404513
|
||||
v 2.900565 -10.085162 1.398479
|
||||
v -2.055000 -5.035690 -0.575956
|
||||
v 1.462533 2.027933 0.151416
|
||||
v 2.388088 -9.022149 1.137576
|
||||
v 1.046068 -8.154587 0.049234
|
||||
v 0.012781 1.741028 0.989278
|
||||
v -3.081303 -9.788935 1.474140
|
||||
v -2.728865 -10.762455 -0.307974
|
||||
v -2.593912 -1.784508 -1.300813
|
||||
v -1.455562 -10.656979 4.847445
|
||||
v -3.303941 -2.376185 0.239862
|
||||
v -2.855936 -4.356300 1.193287
|
||||
v -3.088882 -3.744618 2.998609
|
||||
v -3.055365 -6.594646 1.479124
|
||||
v -3.224320 -6.004218 3.260995
|
||||
v -3.107483 -8.328135 1.860465
|
||||
v -3.258180 -8.009151 3.607301
|
||||
v -3.082253 -9.356806 1.952987
|
||||
v -3.271134 -9.322953 3.659410
|
||||
v -3.173038 -10.107235 3.269696
|
||||
v 1.408831 1.879226 0.512200
|
||||
v 3.161309 -0.949660 0.948460
|
||||
v -0.542306 -7.658642 -1.037759
|
||||
v -0.740115 -8.892838 -0.741831
|
||||
v -0.900984 -8.294271 -0.214678
|
||||
v -0.894387 -8.247567 -0.174009
|
||||
v 2.494693 -9.458380 2.851106
|
||||
v 1.969406 -9.493563 4.496408
|
||||
v 2.035431 -10.179667 4.065444
|
||||
v 2.583841 -8.552948 2.851421
|
||||
v 2.029069 -8.202947 4.530171
|
||||
v 2.673131 -6.838091 2.659020
|
||||
v 2.027262 -6.216575 4.329606
|
||||
v 2.665550 -4.405717 2.370766
|
||||
v 2.010479 -3.852947 3.966494
|
||||
v 1.955416 -1.981083 3.662743
|
||||
v -2.328866 -7.253160 -0.274087
|
||||
v -2.458092 -8.710184 0.077790
|
||||
v -2.434717 -8.933702 0.297064
|
||||
v -2.330808 -8.902542 0.338142
|
||||
v -1.738756 -9.552923 -1.188127
|
||||
v -2.335021 -8.866680 0.006010
|
||||
v -0.527923 -8.719878 -1.668589
|
||||
v -0.711917 -8.044925 -0.872505
|
||||
v 1.262752 -7.918886 -0.634314
|
||||
v 2.659429 -8.823822 0.889056
|
||||
v 2.429645 -8.918675 1.162346
|
||||
v 2.779288 -9.764681 2.420541
|
||||
v -1.828040 -9.749414 -1.624528
|
||||
v 0.289565 -9.603724 5.558864
|
||||
v 0.306160 -7.950502 5.601969
|
||||
v 0.298832 -5.725500 5.250430
|
||||
v 0.304699 -3.441369 4.807540
|
||||
v 0.272662 -1.613887 4.400406
|
||||
v -0.719593 1.218324 0.594728
|
||||
v -1.605539 -9.570544 5.472885
|
||||
v -1.581856 -7.812755 5.506594
|
||||
o Mesh.404_DrawCall_231.009
|
||||
v 4.792623 11.225986 -2.179282
|
||||
v 5.758189 11.628549 1.255615
|
||||
v 4.705511 10.621392 0.099228
|
||||
v 4.982580 11.441686 -1.335826
|
||||
v 1.419380 13.363386 -2.115514
|
||||
v 3.431467 13.543381 -2.462662
|
||||
v 1.805862 14.088643 -1.701494
|
||||
v 1.261859 14.586769 -2.333233
|
||||
v 3.303717 14.987380 -2.637677
|
||||
v 1.142340 16.939522 -2.460912
|
||||
v 3.123014 17.382515 -2.729444
|
||||
v 2.875029 19.324783 -2.843987
|
||||
v 1.481770 21.114315 3.373194
|
||||
v 4.198130 20.600563 3.105379
|
||||
v 3.577706 23.873878 0.304819
|
||||
v 2.711722 20.259167 3.509171
|
||||
v 4.503391 18.830135 3.233526
|
||||
v 3.260633 18.614567 3.627373
|
||||
v 4.854084 16.584602 3.373785
|
||||
v -0.450212 19.388687 -1.651694
|
||||
v 0.948893 19.090038 -2.639347
|
||||
v -0.056708 16.926315 -1.006193
|
||||
v 0.331730 21.800037 -2.547169
|
||||
v 2.327943 22.097630 -3.111368
|
||||
v 1.118120 22.620426 -2.629398
|
||||
v 2.008129 23.375267 -2.444626
|
||||
v 1.737057 11.090570 2.505981
|
||||
v 0.315572 11.860040 1.476652
|
||||
v 1.062797 10.830080 2.167665
|
||||
v 3.978569 12.340864 -2.660781
|
||||
v -1.083037 22.104649 -0.291575
|
||||
v 3.043839 22.689529 -2.861322
|
||||
v 3.481318 13.381741 -2.300205
|
||||
v 1.849919 14.201619 -1.664201
|
||||
v 0.967647 12.337520 2.517111
|
||||
v 3.601652 10.362538 1.576842
|
||||
v 4.705085 11.488576 2.811327
|
||||
v 1.839851 11.197412 1.961797
|
||||
v -1.239052 20.406746 1.093452
|
||||
v -0.276404 19.751770 2.461743
|
||||
v 0.790600 17.778934 2.464010
|
||||
v 2.213884 18.344418 3.622500
|
||||
v 0.954745 15.528487 2.664522
|
||||
v 2.390985 16.076370 3.755048
|
||||
v 1.271678 13.787728 2.814303
|
||||
v 2.689836 14.066113 3.857005
|
||||
v 1.373837 12.760039 2.786397
|
||||
v 2.740431 12.752551 3.826143
|
||||
v 2.463976 11.981544 3.500997
|
||||
v 4.541834 22.224205 -2.128143
|
||||
v 0.096666 14.638120 -0.835936
|
||||
v 0.260713 13.390292 -0.579111
|
||||
v 0.624601 13.970152 -0.139341
|
||||
v 0.662435 14.016358 -0.121668
|
||||
v 5.010294 12.919408 -1.534486
|
||||
v 6.152294 12.827378 -0.241601
|
||||
v 5.823036 12.153586 -0.555323
|
||||
v 5.047718 13.827990 -1.563324
|
||||
v 6.199586 14.118507 -0.207864
|
||||
v 4.912149 15.548461 -1.648903
|
||||
v 6.007621 16.105728 -0.205409
|
||||
v 4.637733 17.982407 -1.663201
|
||||
v 5.664914 18.471966 -0.253857
|
||||
v 4.377327 19.822098 -1.682056
|
||||
v 5.358163 20.344120 -0.264760
|
||||
v 4.850428 21.959091 -1.015879
|
||||
v -0.309298 17.173439 0.834014
|
||||
v -0.169839 14.939831 1.107606
|
||||
v 0.079566 13.471860 1.322762
|
||||
v 0.281826 13.245724 1.403641
|
||||
v 0.370149 13.281243 1.337364
|
||||
v 3.522929 13.486672 -2.317668
|
||||
v 3.405612 13.597938 -2.649846
|
||||
v 1.372563 14.460547 -2.188445
|
||||
v 4.790037 12.635753 -2.015346
|
||||
v 0.082705 13.323051 1.172308
|
||||
v 0.154995 14.240851 -0.626012
|
||||
v 6.201863 12.613906 1.736982
|
||||
v 6.231582 14.264809 1.831368
|
||||
v 5.904984 16.492867 1.773513
|
||||
v 5.506230 18.782337 1.660543
|
||||
v 5.123037 20.613251 1.574513
|
||||
v 5.154233 12.554318 3.317751
|
||||
v 5.178533 14.310170 3.406710
|
||||
v 1.387578 24.091576 -1.676538
|
||||
v 5.358163 20.344120 -0.264760
|
||||
v 4.850428 21.959091 -1.015879
|
||||
v 4.541834 22.224205 -2.128143
|
||||
v 4.850428 21.959091 -1.015879
|
||||
vt 0.4695 0.2234
|
||||
vt 0.3875 0.2945
|
||||
vt 0.3875 0.2562
|
||||
vt 0.4694 0.2559
|
||||
vt 0.7363 0.3613
|
||||
vt 0.6426 0.3613
|
||||
vt 0.7357 0.3073
|
||||
|
@ -102,9 +104,8 @@ vt 0.7363 0.5410
|
|||
vt 0.6465 0.5410
|
||||
vt 0.6543 0.6855
|
||||
vt 0.2168 0.7559
|
||||
vt 0.2871 0.8193
|
||||
vt 0.2012 0.7949
|
||||
vt 0.3066 0.6816
|
||||
vt 0.2871 0.8193
|
||||
vt 0.2519 0.6777
|
||||
vt 0.3066 0.5410
|
||||
vt 0.2559 0.5410
|
||||
|
@ -116,21 +117,26 @@ vt 0.8418 0.6855
|
|||
vt 0.7402 0.7480
|
||||
vt 0.8340 0.7168
|
||||
vt 0.8301 0.7480
|
||||
vt 0.5488 0.8496
|
||||
vt 0.5488 0.6895
|
||||
vt 0.6504 0.8418
|
||||
vt 0.2156 0.2549
|
||||
vt 0.1504 0.2139
|
||||
vt 0.2148 0.2197
|
||||
vt 0.4692 0.2559
|
||||
vt 0.4695 0.2236
|
||||
vt 0.5501 0.2122
|
||||
vt 0.2012 0.7949
|
||||
vt 0.1816 0.6777
|
||||
vt 0.7402 0.7715
|
||||
vt 0.7356 0.3074
|
||||
vt 0.6418 0.3074
|
||||
vt 0.7354 0.2803
|
||||
vt 0.8301 0.8027
|
||||
vt 0.1504 0.2817
|
||||
vt 0.1514 0.1807
|
||||
vt 0.1465 0.5410
|
||||
vt 0.2090 0.6152
|
||||
vt 0.3069 0.2564
|
||||
vt 0.3061 0.2939
|
||||
vt 0.2148 0.1807
|
||||
vt 0.1660 0.6230
|
||||
vt 0.2090 0.6152
|
||||
vt 0.1465 0.5410
|
||||
vt 0.2090 0.5410
|
||||
vt 0.1465 0.4473
|
||||
vt 0.2090 0.4473
|
||||
|
@ -158,11 +164,14 @@ vt 0.5488 0.4473
|
|||
vt 0.4707 0.4473
|
||||
vt 0.5488 0.5410
|
||||
vt 0.4707 0.5410
|
||||
vt 0.5488 0.6895
|
||||
vt 0.4707 0.6895
|
||||
vt 0.4707 0.8496
|
||||
vt 0.5488 0.8496
|
||||
vt 0.5488 0.7695
|
||||
vt 0.9199 0.5410
|
||||
vt 0.9824 0.5410
|
||||
vt 0.9941 0.6426
|
||||
vt 0.9707 0.6387
|
||||
vt 0.9824 0.5410
|
||||
vt 0.9082 0.4473
|
||||
vt 0.9863 0.4473
|
||||
vt 0.9082 0.3613
|
||||
|
@ -171,15 +180,6 @@ vt 0.9043 0.3073
|
|||
vt 0.9857 0.3073
|
||||
vt 0.9043 0.2816
|
||||
vt 0.9855 0.2806
|
||||
vt 0.9852 0.2109
|
||||
vt 0.9039 0.1727
|
||||
vt 0.9852 0.1727
|
||||
vt 0.9043 0.2559
|
||||
vt 0.8258 0.1727
|
||||
vt 0.8258 0.2555
|
||||
vt 0.5501 0.2122
|
||||
vt 0.4692 0.2559
|
||||
vt 0.6418 0.2566
|
||||
vt 0.6419 0.2819
|
||||
vt 0.6419 0.2565
|
||||
vt 0.7354 0.2559
|
||||
|
@ -187,290 +187,271 @@ vt 0.5501 0.2816
|
|||
vt 0.5501 0.3073
|
||||
vt 0.4694 0.2943
|
||||
vt 0.9854 0.2808
|
||||
vt 0.9043 0.2559
|
||||
vt 0.9851 0.2109
|
||||
vt 0.9043 0.2817
|
||||
vt 0.8257 0.2556
|
||||
vt 0.6418 0.2820
|
||||
vt 0.9038 0.1728
|
||||
vt 0.9038 0.1445
|
||||
vt 0.9851 0.1728
|
||||
vt 0.3875 0.2947
|
||||
vt 0.6504 0.8418
|
||||
vt 0.5996 0.7656
|
||||
vt 0.5501 0.2817
|
||||
vt 0.6418 0.2566
|
||||
vt 0.3875 0.2947
|
||||
vt 0.3857 0.3259
|
||||
vt 0.3848 0.3613
|
||||
vt 0.3848 0.4473
|
||||
vt 0.3848 0.5410
|
||||
vt 0.3809 0.6855
|
||||
vt 0.3789 0.8384
|
||||
vt 0.3061 0.2939
|
||||
vt 0.4707 0.8496
|
||||
vt 0.3875 0.2564
|
||||
vt 0.3069 0.3242
|
||||
vt 0.3066 0.3613
|
||||
vt 0.2876 0.8191
|
||||
vt 0.3789 0.8384
|
||||
vt 0.9121 0.7480
|
||||
vt 0.9121 0.8027
|
||||
vt 0.9160 0.7090
|
||||
vt 0.9160 0.6797
|
||||
vt 0.9199 0.6387
|
||||
vt 0.9043 0.3076
|
||||
vt 0.3066 0.3242
|
||||
vn 0.1846 -0.9355 -0.3012
|
||||
vn 0.7562 -0.5071 -0.4135
|
||||
vn -0.4051 -0.5140 0.7561
|
||||
vn 0.4735 -0.1828 -0.8616
|
||||
vn 0.9387 -0.1089 -0.3271
|
||||
vn 0.5015 -0.1293 -0.8554
|
||||
vn 0.9532 -0.0685 -0.2945
|
||||
vn 0.9536 -0.1176 -0.2770
|
||||
vn -0.9402 0.2535 0.2274
|
||||
vn -0.2537 0.9206 0.2968
|
||||
vn -0.7170 0.6922 -0.0820
|
||||
vn -0.3204 0.5013 0.8038
|
||||
vn -0.8419 0.2339 0.4862
|
||||
vn -0.3647 0.1949 0.9105
|
||||
vn -0.7684 0.1360 0.6254
|
||||
vn -0.4227 0.1415 0.8951
|
||||
vn -0.1847 -0.1311 -0.9740
|
||||
vn 0.5766 -0.1788 -0.7972
|
||||
vn -0.1531 -0.1168 -0.9813
|
||||
vn 0.3055 0.1726 -0.9364
|
||||
vn 0.8748 0.2641 -0.4061
|
||||
vn 0.5843 0.8094 -0.0597
|
||||
vn 0.3875 0.9021 -0.1898
|
||||
vn 0.0936 0.7341 0.6725
|
||||
vn 0.9394 0.1533 0.3067
|
||||
vn -0.1686 0.8457 0.5062
|
||||
vn -0.7846 -0.5973 0.1662
|
||||
vn -0.9617 0.1619 -0.2212
|
||||
vn -0.7074 -0.6988 -0.1058
|
||||
vn 0.4909 0.7984 -0.3486
|
||||
vn -0.3170 -0.9480 0.0287
|
||||
vn -0.2055 0.5493 0.8099
|
||||
vn -0.9649 -0.0257 -0.2611
|
||||
vn -0.9107 -0.0302 -0.4119
|
||||
vn -0.9644 -0.1058 -0.2422
|
||||
vn -0.9570 0.1869 -0.2218
|
||||
vn -0.5590 0.0414 -0.8281
|
||||
vn -0.9695 0.0764 0.2328
|
||||
vn -0.9685 0.0169 -0.2485
|
||||
vn -0.9610 0.0656 0.2686
|
||||
vn -0.9761 -0.0388 -0.2137
|
||||
vn -0.9477 0.0378 0.3169
|
||||
vn -0.9769 0.0806 -0.1979
|
||||
vn -0.9295 -0.1241 0.3473
|
||||
vn -0.8719 -0.4219 0.2485
|
||||
vn -0.2878 -0.7669 0.5735
|
||||
vn 0.8988 0.2443 0.3638
|
||||
vn 0.3529 0.6057 0.7131
|
||||
vn -0.1522 -0.1532 -0.9764
|
||||
vn -0.1722 -0.9218 -0.3472
|
||||
vn 0.1889 -0.6662 0.7214
|
||||
vn -0.1122 0.4147 0.9030
|
||||
vn 0.9580 0.0975 0.2697
|
||||
vn 0.7539 -0.1837 0.6307
|
||||
vn 0.7445 -0.3990 0.5352
|
||||
vn 0.9851 -0.0672 0.1582
|
||||
vn 0.7786 0.0022 0.6275
|
||||
vn 0.9832 -0.0040 0.1825
|
||||
vn 0.7621 0.0892 0.6413
|
||||
vn 0.9757 0.0329 0.2166
|
||||
vn 0.7472 0.1189 0.6539
|
||||
vn 0.7128 0.3806 0.5891
|
||||
vn -0.1260 0.8733 0.4705
|
||||
vn -0.6724 -0.0772 -0.7362
|
||||
vn -0.7138 -0.0568 -0.6980
|
||||
vn -0.6067 -0.4550 -0.6518
|
||||
vn -0.3312 -0.8443 -0.4212
|
||||
vn -0.8336 -0.4769 -0.2788
|
||||
vn -0.7863 0.4833 -0.3849
|
||||
vn -0.7678 0.5807 -0.2706
|
||||
vn -0.5975 0.5342 -0.5980
|
||||
vn -0.4077 0.9032 -0.1342
|
||||
vn 0.8061 -0.4397 -0.3959
|
||||
vn 0.5621 -0.8156 0.1372
|
||||
vn 0.6139 0.7853 -0.0800
|
||||
vn -0.2513 0.7544 0.6064
|
||||
vn 0.0295 0.9428 0.3320
|
||||
vn 0.9616 0.1184 0.2474
|
||||
vn -0.8042 0.5860 -0.0993
|
||||
vn 0.2093 -0.7597 0.6156
|
||||
vn 0.2328 -0.2588 0.9374
|
||||
vn 0.2468 0.0570 0.9674
|
||||
vn 0.2379 0.1624 0.9576
|
||||
vn 0.2289 0.1929 0.9541
|
||||
vn 0.2045 0.5013 0.8407
|
||||
vn -0.4382 0.8181 0.3724
|
||||
vn -0.4119 -0.2544 0.8750
|
||||
vn -0.4185 0.0657 0.9058
|
||||
vn 0.2815 0.7696 -0.5730
|
||||
vn -0.2490 0.8579 -0.4495
|
||||
vn -0.3760 0.6124 -0.6953
|
||||
usemtl pants.png
|
||||
vn 0.9121 0.2745 -0.3044
|
||||
vn 0.7686 -0.6241 0.1409
|
||||
vn 0.6777 -0.7350 0.0233
|
||||
vn 0.8988 0.0810 -0.4307
|
||||
vn -0.1547 -0.9194 -0.3617
|
||||
vn 0.0386 -0.4610 -0.8866
|
||||
vn 0.4454 -0.5476 0.7084
|
||||
vn -0.4941 -0.1428 -0.8576
|
||||
vn 0.2026 -0.0559 -0.9777
|
||||
vn -0.4750 -0.0882 -0.8756
|
||||
vn 0.2377 -0.0154 -0.9712
|
||||
vn 0.2523 -0.0618 -0.9657
|
||||
vn -0.3287 0.5505 0.7674
|
||||
vn 0.5179 0.3842 0.7643
|
||||
vn 0.3920 0.8930 0.2213
|
||||
vn -0.0289 0.2488 0.9681
|
||||
vn 0.5919 0.1594 0.7901
|
||||
vn 0.1405 0.0858 0.9864
|
||||
vn 0.5494 0.1035 0.8291
|
||||
vn -0.8477 -0.1637 -0.5046
|
||||
vn -0.3860 -0.1350 -0.9126
|
||||
vn -0.9086 -0.1393 -0.3937
|
||||
vn -0.6000 0.2231 -0.7683
|
||||
vn 0.0244 0.1335 -0.9907
|
||||
vn -0.4367 0.4219 -0.7946
|
||||
vn 0.0689 0.7060 -0.7048
|
||||
vn -0.2548 -0.6386 0.7261
|
||||
vn -0.7674 -0.1216 0.6296
|
||||
vn -0.4716 -0.1431 0.8701
|
||||
vn 0.6617 0.1477 -0.7350
|
||||
vn -0.8821 0.4692 0.0415
|
||||
vn 0.3552 0.4567 -0.8156
|
||||
vn -0.1291 -0.9630 0.2367
|
||||
vn 0.5840 0.5232 0.6206
|
||||
vn -0.7195 -0.0688 0.6910
|
||||
vn 0.1961 -0.8102 0.5523
|
||||
vn 0.3836 -0.6937 0.6096
|
||||
vn 0.1850 -0.9347 -0.3035
|
||||
vn -0.9569 0.0986 0.2732
|
||||
vn -0.7190 -0.0536 0.6929
|
||||
vn -0.7022 -0.1492 0.6962
|
||||
vn -0.2991 0.0237 0.9539
|
||||
vn -0.7109 -0.0267 0.7028
|
||||
vn -0.2639 0.0127 0.9645
|
||||
vn -0.6844 -0.0833 0.7243
|
||||
vn -0.2153 -0.0153 0.9764
|
||||
vn -0.6724 0.0356 0.7393
|
||||
vn -0.1783 -0.1768 0.9680
|
||||
vn -0.2306 -0.4693 0.8524
|
||||
vn 0.7456 0.3540 -0.5646
|
||||
vn -0.9144 -0.1423 -0.3790
|
||||
vn -0.3776 -0.9226 -0.0791
|
||||
vn 0.7223 -0.6694 0.1738
|
||||
vn 0.7131 0.3916 0.5815
|
||||
vn 0.7226 0.1400 -0.6770
|
||||
vn 0.9302 -0.1577 -0.3315
|
||||
vn 0.8455 -0.3714 -0.3838
|
||||
vn 0.6424 -0.0210 -0.7660
|
||||
vn 0.9383 0.0293 -0.3446
|
||||
vn 0.6617 0.0416 -0.7486
|
||||
vn 0.9408 0.1150 -0.3188
|
||||
vn 0.6868 0.0774 -0.7227
|
||||
vn 0.9437 0.1437 -0.2980
|
||||
vn 0.7829 0.0595 -0.6193
|
||||
vn 0.9567 0.2533 -0.1435
|
||||
vn 0.9517 0.2643 -0.1560
|
||||
vn -0.9664 -0.1333 0.2199
|
||||
vn -0.9650 -0.0793 0.2500
|
||||
vn -0.8665 -0.4724 0.1612
|
||||
vn -0.5235 -0.8517 0.0233
|
||||
vn -0.6629 -0.5125 0.5458
|
||||
vn 0.3840 0.7295 0.5661
|
||||
vn 0.5290 0.8465 -0.0593
|
||||
vn 0.2910 0.9367 0.1945
|
||||
vn 0.7052 0.1615 -0.6904
|
||||
vn -0.3603 0.7318 0.5785
|
||||
vn 0.0943 0.9425 0.3205
|
||||
vn 0.9263 -0.2644 0.2684
|
||||
vn 0.9562 0.0511 0.2883
|
||||
vn 0.9422 0.1561 0.2964
|
||||
vn 0.9343 0.1862 0.3039
|
||||
vn 0.8855 0.3541 0.3010
|
||||
vn 0.5415 -0.2909 0.7888
|
||||
vn 0.5615 0.0278 0.8270
|
||||
vn -0.2575 0.9350 -0.2440
|
||||
usemtl pants.png.005
|
||||
s 1
|
||||
f 3/1/1 4/2/2 5/3/3
|
||||
f 6/4/4 4/2/2 3/1/1
|
||||
f 6/4/4 7/5/5 4/2/2
|
||||
f 8/6/6 7/5/5 6/4/4
|
||||
f 8/6/6 9/7/7 7/5/5
|
||||
f 10/8/8 9/7/7 8/6/6
|
||||
f 13/9/9 12/10/10 11/11/11
|
||||
f 13/9/9 14/12/12 12/10/10
|
||||
f 15/13/13 14/12/12 13/9/9
|
||||
f 15/13/13 16/14/14 14/12/12
|
||||
f 17/15/15 16/14/14 15/13/13
|
||||
f 17/15/15 18/16/16 16/14/14
|
||||
f 22/17/17 23/18/18 24/19/19
|
||||
f 25/20/20 23/18/18 22/17/17
|
||||
f 25/20/20 26/21/21 23/18/18
|
||||
f 27/22/22 26/21/21 25/20/20
|
||||
f 27/22/22 28/23/23 26/21/21
|
||||
f 30/24/24 31/25/25 29/26/26
|
||||
f 32/27/27 33/28/28 34/29/29
|
||||
f 37/30/30 26/21/21 28/23/23
|
||||
f 5/31/3 38/32/31 39/33/32
|
||||
f 38/32/31 5/31/3 4/2/2
|
||||
f 33/28/28 32/27/27 41/34/33
|
||||
f 42/35/34 34/29/29 33/28/28
|
||||
f 46/36/35 45/37/36 43/38/37
|
||||
f 46/36/35 47/39/38 45/37/36
|
||||
f 48/40/39 47/39/38 46/36/35
|
||||
f 48/40/39 49/41/40 47/39/38
|
||||
f 50/42/41 49/41/40 48/40/39
|
||||
f 50/42/41 51/43/42 49/41/40
|
||||
f 52/44/43 51/43/42 50/42/41
|
||||
f 52/44/43 53/45/44 51/43/42
|
||||
f 41/46/33 53/45/44 52/44/43
|
||||
f 41/46/33 54/47/45 53/45/44
|
||||
f 32/48/27 54/47/45 41/46/33
|
||||
f 32/48/27 44/49/46 54/47/45
|
||||
f 34/29/29 44/49/46 32/48/27
|
||||
f 56/50/47 37/30/30 55/51/48
|
||||
f 56/50/47 26/21/21 37/30/30
|
||||
f 10/8/8 26/21/21 56/50/47
|
||||
f 10/8/8 23/18/18 26/21/21
|
||||
f 8/6/6 23/18/18 10/8/8
|
||||
f 8/6/6 24/19/19 23/18/18
|
||||
f 6/4/4 24/19/19 8/6/6
|
||||
f 6/4/4 57/52/49 24/19/19
|
||||
f 3/1/1 57/52/49 6/4/4
|
||||
f 3/1/1 58/53/50 57/52/49
|
||||
f 5/54/3 58/53/50 3/1/1
|
||||
f 5/54/3 59/55/51 58/53/50
|
||||
f 39/33/32 59/55/51 5/54/3
|
||||
f 39/33/32 60/56/52 59/55/51
|
||||
f 61/57/53 62/58/54 63/59/55
|
||||
f 64/60/56 62/58/54 61/57/53
|
||||
f 64/60/56 65/61/57 62/58/54
|
||||
f 66/62/58 65/61/57 64/60/56
|
||||
f 66/62/58 67/63/59 65/61/57
|
||||
f 68/64/60 67/63/59 66/62/58
|
||||
f 68/64/60 69/65/61 67/63/59
|
||||
f 31/25/25 69/65/61 68/64/60
|
||||
f 31/25/25 70/66/62 69/65/61
|
||||
f 30/24/24 70/66/62 31/25/25
|
||||
f 30/24/24 40/67/63 70/66/62
|
||||
f 36/68/64 46/69/35 43/70/37
|
||||
f 71/71/65 46/69/35 36/68/64
|
||||
f 71/71/65 48/72/39 46/69/35
|
||||
f 72/73/66 48/72/39 71/71/65
|
||||
f 72/73/66 50/74/41 48/72/39
|
||||
f 73/75/67 50/74/41 72/73/66
|
||||
f 73/75/67 52/76/43 50/74/41
|
||||
f 74/77/68 52/76/43 73/75/67
|
||||
f 74/77/68 41/78/33 52/76/43
|
||||
f 33/79/28 75/80/69 42/81/34
|
||||
f 76/82/70 75/80/69 33/79/28
|
||||
f 76/82/70 77/83/71 75/80/69
|
||||
f 78/84/72 77/83/71 76/82/70
|
||||
f 42/35/34 35/85/73 2/86/74 34/29/29
|
||||
f 80/87/75 35/85/73 42/35/34
|
||||
f 81/88/76 80/89/75 79/90/77
|
||||
f 81/88/76 82/91/78 80/89/75
|
||||
f 61/92/53 82/91/78 81/88/76
|
||||
f 61/92/53 63/93/55 82/91/78
|
||||
f 41/94/33 76/82/70 33/95/28
|
||||
f 74/96/68 76/82/70 41/94/33
|
||||
f 74/96/68 78/97/72 76/82/70
|
||||
f 60/56/52 78/97/72 74/96/68
|
||||
f 60/56/52 79/90/77 78/97/72
|
||||
f 39/33/32 79/90/77 60/56/52
|
||||
f 39/33/32 81/98/76 79/90/77
|
||||
f 38/32/31 81/98/76 39/33/32
|
||||
f 38/32/31 61/57/53 81/98/76
|
||||
f 4/2/2 61/57/53 38/32/31
|
||||
f 4/2/2 64/60/56 61/57/53
|
||||
f 7/5/5 64/60/56 4/2/2
|
||||
f 7/5/5 66/62/58 64/60/56
|
||||
f 9/7/7 66/62/58 7/5/5
|
||||
f 9/7/7 68/64/60 66/62/58
|
||||
f 10/8/8 68/64/60 9/7/7
|
||||
f 10/8/8 31/25/25 68/64/60
|
||||
f 56/50/47 31/25/25 10/8/8
|
||||
f 56/50/47 29/26/26 31/25/25
|
||||
f 55/51/48 29/26/26 56/50/47
|
||||
f 75/99/69 83/100/79 42/101/34
|
||||
f 44/49/46 34/29/29 1/102/80
|
||||
f 2/86/74 1/102/80 34/29/29
|
||||
f 82/103/78 35/85/73 80/87/75
|
||||
f 82/103/78 2/86/74 35/85/73
|
||||
f 63/59/55 2/86/74 82/103/78
|
||||
f 63/59/55 1/102/80 2/86/74
|
||||
f 62/58/54 1/102/80 63/59/55
|
||||
f 62/58/54 84/104/81 1/102/80
|
||||
f 65/61/57 84/104/81 62/58/54
|
||||
f 65/61/57 85/105/82 84/104/81
|
||||
f 67/63/59 85/105/82 65/61/57
|
||||
f 67/63/59 86/106/83 85/105/82
|
||||
f 69/65/61 86/106/83 67/63/59
|
||||
f 69/65/61 87/107/84 86/106/83
|
||||
f 70/66/62 87/107/84 69/65/61
|
||||
f 70/66/62 88/108/85 87/107/84
|
||||
f 40/67/63 88/108/85 70/66/62
|
||||
f 40/67/63 89/109/86 88/108/85
|
||||
f 84/104/81 44/110/46 1/102/80
|
||||
f 84/104/81 90/111/87 44/110/46
|
||||
f 85/105/82 90/111/87 84/104/81
|
||||
f 85/105/82 91/112/88 90/111/87
|
||||
f 86/106/83 91/112/88 85/105/82
|
||||
f 86/106/83 18/16/16 91/112/88
|
||||
f 87/107/84 18/16/16 86/106/83
|
||||
f 87/107/84 16/14/14 18/16/16
|
||||
f 88/108/85 16/14/14 87/107/84
|
||||
f 88/108/85 14/12/12 16/14/14
|
||||
f 89/109/86 14/12/12 88/108/85
|
||||
f 89/109/86 12/113/10 14/12/12
|
||||
f 25/20/20 21/114/89 27/22/22
|
||||
f 25/20/20 20/115/90 21/114/89
|
||||
f 22/17/17 20/115/90 25/20/20
|
||||
f 22/17/17 19/116/91 20/115/90
|
||||
f 24/19/19 19/116/91 22/17/17
|
||||
f 24/19/19 36/68/64 19/116/91
|
||||
f 57/52/49 36/68/64 24/19/19
|
||||
f 57/52/49 71/71/65 36/68/64
|
||||
f 58/53/50 71/71/65 57/52/49
|
||||
f 58/53/50 72/73/66 71/71/65
|
||||
f 59/55/51 72/73/66 58/53/50
|
||||
f 59/55/51 73/117/67 72/73/66
|
||||
f 60/56/52 73/117/67 59/55/51
|
||||
f 60/56/52 74/96/68 73/117/67
|
||||
f 36/68/64 43/70/37 19/116/91
|
||||
f 47/39/38 15/13/13 45/37/36
|
||||
f 47/39/38 17/15/15 15/13/13
|
||||
f 49/41/40 17/15/15 47/39/38
|
||||
f 49/41/40 18/16/16 17/15/15
|
||||
f 51/43/42 18/16/16 49/41/40
|
||||
f 51/43/42 91/112/88 18/16/16
|
||||
f 53/45/44 91/112/88 51/43/42
|
||||
f 53/45/44 90/118/87 91/112/88
|
||||
f 54/47/45 90/118/87 53/45/44
|
||||
f 54/47/45 44/49/46 90/118/87
|
||||
f 55/51/48 37/30/30 28/23/23 29/26/26
|
||||
f 27/22/22 21/114/89 20/115/90 28/23/23
|
||||
f 28/23/23 20/115/90 29/26/26
|
||||
f 30/24/24 29/26/26 20/115/90
|
||||
f 40/67/63 30/24/24 20/115/90
|
||||
f 89/109/86 40/67/63 20/115/90
|
||||
f 20/115/90 19/116/91 89/109/86
|
||||
f 89/109/86 19/116/91 12/113/10
|
||||
f 12/113/10 19/116/91 11/11/11
|
||||
f 13/9/9 11/11/11 19/116/91
|
||||
f 19/116/91 43/70/37 13/9/9
|
||||
f 13/9/9 43/70/37 15/13/13
|
||||
f 45/37/36 15/13/13 43/38/37
|
||||
f 1/1/1 2/2/2 3/3/3
|
||||
f 4/4/4 2/2/2 1/1/1
|
||||
f 5/5/5 6/6/6 7/7/7
|
||||
f 8/8/8 6/6/6 5/5/5
|
||||
f 8/8/8 9/9/9 6/6/6
|
||||
f 10/10/10 9/9/9 8/8/8
|
||||
f 10/10/10 11/11/11 9/9/9
|
||||
f 12/12/12 11/11/11 10/10/10
|
||||
f 13/13/13 14/14/14 15/15/15
|
||||
f 16/16/16 14/14/14 13/13/13
|
||||
f 16/16/16 17/17/17 14/14/14
|
||||
f 18/18/18 17/17/17 16/16/16
|
||||
f 18/18/18 19/19/19 17/17/17
|
||||
f 20/20/20 21/21/21 22/22/22
|
||||
f 23/23/23 21/21/21 20/20/20
|
||||
f 23/23/23 24/24/24 21/21/21
|
||||
f 25/25/25 24/24/24 23/23/23
|
||||
f 25/25/25 26/26/26 24/24/24
|
||||
f 27/27/27 28/28/28 29/29/29
|
||||
f 4/30/4 1/31/1 30/32/30
|
||||
f 15/33/15 31/34/31 13/13/13
|
||||
f 32/35/32 24/24/24 26/26/26
|
||||
f 7/36/7 33/37/33 34/38/34
|
||||
f 26/26/26 15/39/15 32/35/32
|
||||
f 33/37/33 7/36/7 6/6/6
|
||||
f 28/28/28 27/27/27 35/40/35
|
||||
f 36/41/36 37/42/37 38/43/38
|
||||
f 39/44/39 40/45/40 31/34/31
|
||||
f 41/46/41 40/45/40 39/44/39
|
||||
f 41/46/41 42/47/42 40/45/40
|
||||
f 43/48/43 42/47/42 41/46/41
|
||||
f 43/48/43 44/49/44 42/47/42
|
||||
f 45/50/45 44/49/44 43/48/43
|
||||
f 45/50/45 46/51/46 44/49/44
|
||||
f 47/52/47 46/51/46 45/50/45
|
||||
f 47/52/47 48/53/48 46/51/46
|
||||
f 35/54/35 48/53/48 47/52/47
|
||||
f 35/54/35 49/55/49 48/53/48
|
||||
f 27/56/27 49/55/49 35/54/35
|
||||
f 27/56/27 37/57/37 49/55/49
|
||||
f 29/29/29 37/57/37 27/56/27
|
||||
f 29/29/29 38/43/38 37/57/37
|
||||
f 50/58/50 32/35/32 15/59/15
|
||||
f 50/58/50 24/24/24 32/35/32
|
||||
f 12/12/12 24/24/24 50/58/50
|
||||
f 12/12/12 21/21/21 24/24/24
|
||||
f 10/10/10 21/21/21 12/12/12
|
||||
f 10/10/10 22/22/22 21/21/21
|
||||
f 8/8/8 22/22/22 10/10/10
|
||||
f 8/8/8 51/60/51 22/22/22
|
||||
f 5/5/5 51/60/51 8/8/8
|
||||
f 5/5/5 52/61/52 51/60/51
|
||||
f 7/62/7 52/61/52 5/5/5
|
||||
f 7/62/7 53/63/53 52/61/52
|
||||
f 34/38/34 53/63/53 7/62/7
|
||||
f 34/38/34 54/64/54 53/63/53
|
||||
f 55/65/55 56/66/56 57/67/57
|
||||
f 58/68/58 56/66/56 55/65/55
|
||||
f 58/68/58 59/69/59 56/66/56
|
||||
f 60/70/60 59/69/59 58/68/58
|
||||
f 60/70/60 61/71/61 59/69/59
|
||||
f 62/72/62 61/71/61 60/70/60
|
||||
f 62/72/62 63/73/63 61/71/61
|
||||
f 64/74/64 63/73/63 62/72/62
|
||||
f 64/74/64 65/75/65 63/73/63
|
||||
f 15/76/15 65/75/65 64/74/64 66/77/66
|
||||
f 67/78/67 39/79/39 31/80/31
|
||||
f 67/78/67 41/81/41 39/79/39
|
||||
f 68/82/68 41/81/41 67/78/67
|
||||
f 68/82/68 43/83/43 41/81/41
|
||||
f 69/84/69 43/83/43 68/82/68
|
||||
f 69/84/69 45/85/45 43/83/43
|
||||
f 70/86/70 45/85/45 69/84/69
|
||||
f 70/86/70 47/87/47 45/85/45
|
||||
f 71/88/71 47/87/47 70/86/70
|
||||
f 71/88/71 35/89/35 47/87/47
|
||||
f 72/90/72 73/91/73 74/92/74
|
||||
f 72/90/72 75/93/75 73/91/73
|
||||
f 55/94/55 75/93/75 72/90/72
|
||||
f 55/94/55 57/95/57 75/93/75
|
||||
f 35/96/35 76/97/76 28/98/28
|
||||
f 71/99/71 76/97/76 35/96/35
|
||||
f 71/99/71 77/100/77 76/97/76
|
||||
f 54/64/54 77/100/77 71/99/71
|
||||
f 54/64/54 74/92/74 77/100/77
|
||||
f 34/38/34 74/92/74 54/64/54
|
||||
f 34/38/34 72/101/72 74/92/74
|
||||
f 33/37/33 72/101/72 34/38/34
|
||||
f 33/37/33 55/65/55 72/101/72
|
||||
f 6/6/6 55/65/55 33/37/33
|
||||
f 6/6/6 58/68/58 55/65/55
|
||||
f 9/9/9 58/68/58 6/6/6
|
||||
f 9/9/9 60/70/60 58/68/58
|
||||
f 11/11/11 60/70/60 9/9/9
|
||||
f 11/11/11 62/72/62 60/70/60
|
||||
f 12/12/12 62/72/62 11/11/11
|
||||
f 12/12/12 64/74/64 62/72/62
|
||||
f 50/58/50 64/74/64 12/12/12
|
||||
f 50/58/50 15/102/15 66/103/66 64/74/64
|
||||
f 75/104/75 30/32/30 73/105/73
|
||||
f 75/104/75 4/30/4 30/32/30
|
||||
f 57/67/57 4/30/4 75/104/75
|
||||
f 57/67/57 2/106/2 4/30/4
|
||||
f 56/66/56 2/106/2 57/67/57
|
||||
f 56/66/56 78/107/78 2/106/2
|
||||
f 59/69/59 78/107/78 56/66/56
|
||||
f 59/69/59 79/108/79 78/107/78
|
||||
f 61/71/61 79/108/79 59/69/59
|
||||
f 61/71/61 80/109/80 79/108/79
|
||||
f 63/73/63 80/109/80 61/71/61
|
||||
f 63/73/63 81/110/81 80/109/80
|
||||
f 65/75/65 81/110/81 63/73/63
|
||||
f 65/75/65 82/111/82 81/110/81
|
||||
f 15/112/15 82/111/82 65/75/65
|
||||
f 2/106/2 36/41/36 3/113/3
|
||||
f 2/106/2 37/42/37 36/41/36
|
||||
f 78/107/78 37/42/37 2/106/2
|
||||
f 78/107/78 83/114/83 37/42/37
|
||||
f 79/108/79 83/114/83 78/107/78
|
||||
f 79/108/79 84/115/84 83/114/83
|
||||
f 80/109/80 84/115/84 79/108/79
|
||||
f 80/109/80 19/19/19 84/115/84
|
||||
f 81/110/81 19/19/19 80/109/80
|
||||
f 81/110/81 17/17/17 19/19/19
|
||||
f 82/111/82 17/17/17 81/110/81
|
||||
f 82/111/82 14/14/14 17/17/17
|
||||
f 15/116/15 14/14/14 82/111/82
|
||||
f 26/26/26 85/117/85 15/118/15
|
||||
f 25/25/25 85/117/85 26/26/26
|
||||
f 25/25/25 31/119/31 85/117/85
|
||||
f 23/23/23 31/119/31 25/25/25
|
||||
f 20/20/20 31/120/31 23/23/23
|
||||
f 22/22/22 31/121/31 20/20/20
|
||||
f 22/22/22 67/78/67 31/121/31
|
||||
f 51/60/51 67/78/67 22/22/22
|
||||
f 51/60/51 68/82/68 67/78/67
|
||||
f 52/61/52 68/82/68 51/60/51
|
||||
f 52/61/52 69/84/69 68/82/68
|
||||
f 53/63/53 69/84/69 52/61/52
|
||||
f 53/63/53 70/122/70 69/84/69
|
||||
f 54/64/54 70/122/70 53/63/53
|
||||
f 54/64/54 71/99/71 70/122/70
|
||||
f 42/47/42 16/16/16 40/45/40
|
||||
f 42/47/42 18/18/18 16/16/16
|
||||
f 44/49/44 18/18/18 42/47/42
|
||||
f 44/49/44 19/19/19 18/18/18
|
||||
f 46/51/46 19/19/19 44/49/44
|
||||
f 46/51/46 84/115/84 19/19/19
|
||||
f 48/53/48 84/115/84 46/51/46
|
||||
f 48/53/48 83/123/83 84/115/84
|
||||
f 49/55/49 83/123/83 48/53/48
|
||||
f 49/55/49 37/57/37 83/123/83
|
||||
f 31/34/31 15/118/15 85/117/85
|
||||
f 16/16/16 13/13/13 31/34/31 40/45/40
|
||||
|
|
|
@ -0,0 +1,13 @@
|
|||
# Blender MTL File: 'Full_remake.blend'
|
||||
# Material Count: 1
|
||||
|
||||
newmtl pants.png.002
|
||||
Ns 92.156863
|
||||
Ka 0.000000 0.000000 0.000000
|
||||
Kd 0.800000 0.800000 0.800000
|
||||
Ks 0.250000 0.250000 0.250000
|
||||
Ke 0.000000 0.000000 0.000000
|
||||
Ni 1.000000
|
||||
d 1.000000
|
||||
illum 2
|
||||
map_Kd pants.png
|
|
@ -0,0 +1,272 @@
|
|||
# Blender v2.78 (sub 0) OBJ File: 'Full_remake.blend'
|
||||
# www.blender.org
|
||||
mtllib goku_legR.mtl
|
||||
o Mesh.404_DrawCall_231.005
|
||||
v -2.868948 19.284849 -1.103089
|
||||
v -2.654046 21.448448 -0.748653
|
||||
v -1.165034 21.336220 -1.480672
|
||||
v -3.508905 19.204569 0.382987
|
||||
v -3.114214 21.340710 0.734748
|
||||
v -3.196019 19.022778 1.944768
|
||||
v -2.784688 21.083992 2.223972
|
||||
v -1.657984 20.915960 3.037105
|
||||
v 1.062518 24.174778 1.291783
|
||||
v 1.441321 24.604208 1.567713
|
||||
v -1.155969 18.692434 3.127156
|
||||
v 0.231306 20.440346 3.520150
|
||||
v -2.164540 18.854668 2.723790
|
||||
v -1.481101 16.080057 2.925763
|
||||
v -3.636201 16.413776 1.605575
|
||||
v -1.942717 13.761362 2.654280
|
||||
v -4.003160 13.816885 1.160168
|
||||
v -3.904684 16.539463 -0.003838
|
||||
v 3.010944 23.962084 1.126976
|
||||
v 2.424584 24.342396 1.971204
|
||||
v 2.424892 18.370289 2.032597
|
||||
v 1.591134 14.259579 0.531490
|
||||
v 1.723407 13.986858 2.138353
|
||||
v 1.991736 14.738779 0.899303
|
||||
v 2.137142 15.749077 2.087034
|
||||
v 2.764485 15.821661 0.564137
|
||||
v 2.943390 18.491846 0.567412
|
||||
v 3.207965 20.773058 0.546177
|
||||
v 3.109288 24.463417 1.025765
|
||||
v 1.688580 15.062572 -0.733291
|
||||
v 1.650308 15.149340 -0.726290
|
||||
v 1.084263 14.257994 -0.976946
|
||||
v 2.341531 15.953905 -1.019494
|
||||
v 0.681627 21.169943 -1.795449
|
||||
v 1.506531 25.279507 0.183840
|
||||
v 1.710903 25.248650 -0.023350
|
||||
v -1.298309 19.204132 -1.749426
|
||||
v -3.105738 16.545378 -1.486282
|
||||
v -4.181901 13.979244 -0.430913
|
||||
v -1.417017 16.395271 -2.071722
|
||||
v -1.396514 14.390347 -2.214160
|
||||
v -3.133063 14.270258 -1.822084
|
||||
v 0.550150 16.204372 -2.107341
|
||||
v 0.599899 18.983505 -1.955046
|
||||
v 2.393082 18.688004 -0.983614
|
||||
v 2.460543 21.020260 -0.907571
|
||||
v 2.768272 24.840399 0.853376
|
||||
v 0.538071 14.475813 -2.068935
|
||||
v 1.136643 25.552120 0.396969
|
||||
v 1.115064 25.622540 0.620813
|
||||
v 0.630953 25.271051 0.430549
|
||||
v 0.284704 24.663168 0.913682
|
||||
v 0.537529 24.913460 1.369058
|
||||
v 0.369551 15.904594 2.742700
|
||||
v -0.118277 13.860155 2.606006
|
||||
v 0.692037 18.520206 2.819758
|
||||
v 2.013036 24.324469 1.548359
|
||||
vt 0.4707 0.5410
|
||||
vt 0.4707 0.6895
|
||||
vt 0.5488 0.6895
|
||||
vt 0.3848 0.5410
|
||||
vt 0.3809 0.6855
|
||||
vt 0.3066 0.5410
|
||||
vt 0.3066 0.6816
|
||||
vt 0.2519 0.6777
|
||||
vt 0.2168 0.7559
|
||||
vt 0.1816 0.6777
|
||||
vt 0.2090 0.5410
|
||||
vt 0.2090 0.6152
|
||||
vt 0.2559 0.5410
|
||||
vt 0.2090 0.4473
|
||||
vt 0.3066 0.4473
|
||||
vt 0.2129 0.3613
|
||||
vt 0.3066 0.3613
|
||||
vt 0.3848 0.4473
|
||||
vt 0.9199 0.6387
|
||||
vt 0.9707 0.6387
|
||||
vt 0.9199 0.5410
|
||||
vt 0.8262 0.3613
|
||||
vt 0.9082 0.3613
|
||||
vt 0.8268 0.3073
|
||||
vt 0.9082 0.4473
|
||||
vt 0.8262 0.4473
|
||||
vt 0.8262 0.5410
|
||||
vt 0.8574 0.6426
|
||||
vt 0.9160 0.6797
|
||||
vt 0.7357 0.3073
|
||||
vt 0.7354 0.2803
|
||||
vt 0.7363 0.3613
|
||||
vt 0.7363 0.4473
|
||||
vt 0.6543 0.6855
|
||||
vt 0.6504 0.8105
|
||||
vt 0.7402 0.7480
|
||||
vt 0.5488 0.5410
|
||||
vt 0.4707 0.4473
|
||||
vt 0.3848 0.3613
|
||||
vt 0.5488 0.4473
|
||||
vt 0.5488 0.3613
|
||||
vt 0.4707 0.3613
|
||||
vt 0.6426 0.4473
|
||||
vt 0.6465 0.5410
|
||||
vt 0.7363 0.5410
|
||||
vt 0.7598 0.6699
|
||||
vt 0.8418 0.6855
|
||||
vt 0.6426 0.3613
|
||||
vt 0.6504 0.8418
|
||||
vt 0.5488 0.8496
|
||||
vt 0.4707 0.8496
|
||||
vt 0.3789 0.8384
|
||||
vt 0.2876 0.8191
|
||||
vt 0.9863 0.4473
|
||||
vt 0.9863 0.3613
|
||||
vt 0.9824 0.5410
|
||||
vt 0.9941 0.6426
|
||||
vt 0.1660 0.6230
|
||||
vt 0.1465 0.5410
|
||||
vt 0.1465 0.4473
|
||||
vt 0.1504 0.3613
|
||||
vn -0.6888 0.1735 -0.7039
|
||||
vn -0.6944 0.4337 -0.5742
|
||||
vn -0.2736 0.3363 -0.9011
|
||||
vn -0.9823 0.1677 -0.0833
|
||||
vn -0.8921 0.4510 0.0286
|
||||
vn -0.8369 0.0810 0.5413
|
||||
vn -0.7299 0.3756 0.5712
|
||||
vn -0.3836 0.3089 0.8703
|
||||
vn -0.5159 0.5919 0.6193
|
||||
vn -0.1509 0.5710 0.8070
|
||||
vn -0.1525 -0.0886 0.9843
|
||||
vn 0.2753 0.0691 0.9589
|
||||
vn -0.5011 -0.0187 0.8652
|
||||
vn -0.2182 -0.0658 0.9737
|
||||
vn -0.8325 0.0432 0.5524
|
||||
vn -0.2176 -0.7147 0.6647
|
||||
vn -0.6878 -0.6544 0.3142
|
||||
vn -0.9781 0.1443 -0.1500
|
||||
vn 0.8332 -0.0304 0.5521
|
||||
vn -0.0573 0.0103 0.9983
|
||||
vn 0.7276 -0.0130 0.6859
|
||||
vn 0.2104 0.1776 0.9613
|
||||
vn 0.5705 -0.6285 0.5286
|
||||
vn -0.8310 0.5195 0.1990
|
||||
vn 0.7312 -0.1966 0.6532
|
||||
vn 0.9401 -0.3390 0.0360
|
||||
vn 0.9987 -0.0514 0.0004
|
||||
vn 0.9942 -0.0419 0.0995
|
||||
vn 0.6838 0.1120 -0.7210
|
||||
vn -0.9577 0.1333 0.2550
|
||||
vn -0.9088 -0.4079 0.0878
|
||||
vn -0.3935 -0.8866 0.2432
|
||||
vn 0.7969 -0.2412 -0.5538
|
||||
vn 0.1504 0.2248 -0.9627
|
||||
vn -0.3300 0.4715 -0.8178
|
||||
vn -0.0036 0.4514 -0.8923
|
||||
vn -0.2374 0.1271 -0.9631
|
||||
vn -0.6357 0.1498 -0.7573
|
||||
vn -0.7552 -0.5990 -0.2663
|
||||
vn -0.1649 0.0966 -0.9816
|
||||
vn -0.0383 -0.6107 -0.7910
|
||||
vn -0.4190 -0.5560 -0.7178
|
||||
vn 0.2670 0.0197 -0.9635
|
||||
vn 0.2077 0.0671 -0.9759
|
||||
vn 0.7601 0.0069 -0.6497
|
||||
vn 0.7041 0.0951 -0.7037
|
||||
vn 0.6832 0.2074 -0.7001
|
||||
vn 0.2598 -0.5923 -0.7627
|
||||
vn -0.6175 0.5758 -0.5359
|
||||
vn -0.6379 0.5507 -0.5384
|
||||
vn 0.2270 0.1476 -0.9626
|
||||
vn -0.7079 0.6693 0.2258
|
||||
vn -0.3191 0.4616 0.8277
|
||||
vn 0.2162 -0.0804 0.9730
|
||||
vn 0.1366 -0.7594 0.6361
|
||||
vn 0.3450 -0.0665 0.9363
|
||||
vn -0.1245 0.2003 0.9718
|
||||
usemtl pants.png.002
|
||||
s 1
|
||||
f 1/1/1 2/2/2 3/3/3
|
||||
f 4/4/4 2/2/2 1/1/1
|
||||
f 4/4/4 5/5/5 2/2/2
|
||||
f 6/6/6 5/5/5 4/4/4
|
||||
f 6/6/6 7/7/7 5/5/5
|
||||
f 8/8/8 7/7/7 6/6/6
|
||||
f 8/8/8 9/9/9 7/7/7
|
||||
f 10/10/10 9/9/9 8/8/8
|
||||
f 8/8/8 11/11/11 12/12/12
|
||||
f 13/13/13 11/11/11 8/8/8
|
||||
f 13/13/13 14/14/14 11/11/11
|
||||
f 15/15/15 14/14/14 13/13/13
|
||||
f 15/15/15 16/16/16 14/14/14
|
||||
f 17/17/17 16/16/16 15/15/15
|
||||
f 18/18/18 4/4/4 1/1/1
|
||||
f 15/15/15 4/4/4 18/18/18
|
||||
f 15/15/15 6/6/6 4/4/4
|
||||
f 13/13/13 6/6/6 15/15/15
|
||||
f 13/13/13 8/8/8 6/6/6
|
||||
f 10/10/10 8/8/8 12/12/12
|
||||
f 19/19/19 20/20/20 21/21/21
|
||||
f 15/15/15 18/18/18 17/17/17
|
||||
f 22/22/22 23/23/23 24/24/24
|
||||
f 22/22/22 25/25/25 23/23/23
|
||||
f 26/26/26 25/25/25 22/22/22
|
||||
f 26/26/26 21/21/21 25/25/25
|
||||
f 27/27/27 21/21/21 26/26/26
|
||||
f 27/27/27 19/19/19 21/21/21
|
||||
f 28/28/28 19/19/19 27/27/27
|
||||
f 28/28/28 29/29/29 19/19/19
|
||||
f 30/30/30 24/24/24 31/31/31
|
||||
f 30/30/30 22/22/22 24/24/24
|
||||
f 32/32/32 22/22/22 30/30/30
|
||||
f 32/32/32 26/26/26 22/22/22
|
||||
f 33/33/33 26/26/26 32/32/32
|
||||
f 33/33/33 27/27/27 26/26/26
|
||||
f 34/34/34 35/35/35 36/36/36
|
||||
f 34/34/34 3/3/3 35/35/35
|
||||
f 37/37/37 3/3/3 34/34/34
|
||||
f 37/37/37 1/1/1 3/3/3
|
||||
f 38/38/38 1/1/1 37/37/37
|
||||
f 38/38/38 18/18/18 1/1/1
|
||||
f 39/39/39 18/18/18 38/38/38
|
||||
f 39/39/39 17/17/17 18/18/18
|
||||
f 40/40/40 41/41/41 42/42/42
|
||||
f 40/40/40 43/43/43 41/41/41
|
||||
f 44/44/44 43/43/43 40/40/40
|
||||
f 44/44/44 45/45/45 43/43/43
|
||||
f 34/34/34 45/45/45 44/44/44
|
||||
f 34/34/34 46/46/46 45/45/45
|
||||
f 36/36/36 46/46/46 34/34/34
|
||||
f 36/36/36 47/47/47 46/46/46
|
||||
f 43/43/43 48/48/48 41/41/41
|
||||
f 43/43/43 33/33/33 48/48/48
|
||||
f 45/45/45 33/33/33 43/43/43
|
||||
f 45/45/45 27/27/27 33/33/33
|
||||
f 46/46/46 27/27/27 45/45/45
|
||||
f 46/46/46 28/28/28 27/27/27
|
||||
f 47/47/47 28/28/28 46/46/46
|
||||
f 47/47/47 29/29/29 28/28/28
|
||||
f 3/3/3 49/49/49 35/35/35
|
||||
f 3/3/3 50/50/50 49/49/49
|
||||
f 2/2/2 50/50/50 3/3/3
|
||||
f 2/2/2 51/51/51 50/50/50
|
||||
f 5/5/5 51/51/51 2/2/2
|
||||
f 5/5/5 52/52/52 51/51/51
|
||||
f 7/7/7 52/52/52 5/5/5
|
||||
f 7/7/7 53/53/53 52/52/52
|
||||
f 9/9/9 53/53/53 7/7/7
|
||||
f 23/23/23 54/54/54 55/55/55
|
||||
f 25/25/25 54/54/54 23/23/23
|
||||
f 25/25/25 56/56/56 54/54/54
|
||||
f 21/21/21 56/56/56 25/25/25
|
||||
f 21/21/21 57/57/57 56/56/56
|
||||
f 20/20/20 57/57/57 21/21/21
|
||||
f 12/12/12 57/58/57 10/10/10
|
||||
f 12/12/12 56/59/56 57/58/57
|
||||
f 11/11/11 56/59/56 12/12/12
|
||||
f 11/11/11 54/60/54 56/59/56
|
||||
f 14/14/14 54/60/54 11/11/11
|
||||
f 14/14/14 55/61/55 54/60/54
|
||||
f 16/16/16 55/61/55 14/14/14
|
||||
f 38/38/38 42/42/42 39/39/39
|
||||
f 38/38/38 40/40/40 42/42/42
|
||||
f 37/37/37 40/40/40 38/38/38
|
||||
f 37/37/37 44/44/44 40/40/40
|
||||
f 34/34/34 44/44/44 37/37/37
|
||||
f 48/48/48 32/32/32 30/30/30
|
||||
f 33/33/33 32/32/32 48/48/48
|
||||
f 42/42/42 41/41/41 23/23/23 55/55/55 16/16/16 17/17/17 39/39/39
|
||||
f 41/41/41 48/48/48 23/23/23
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 24 KiB |
Before Width: | Height: | Size: 27 KiB After Width: | Height: | Size: 27 KiB |
After Width: | Height: | Size: 1.5 MiB |
|
@ -5,24 +5,32 @@ import math,random
|
|||
import pi3d
|
||||
import avatars
|
||||
import maps
|
||||
import objects
|
||||
#import sys
|
||||
from serial_data import Serial_data
|
||||
#sys.path.insert(0, "../python-vrzero")
|
||||
from vrzero import engine
|
||||
|
||||
USE_SERIAL = True
|
||||
USE_STEREO = False
|
||||
USE_TUNNEL = True
|
||||
SHOW_STAT = True
|
||||
###### Select the mode here
|
||||
USE_SERIAL = False # try the app without a serial connection, keyboard still work
|
||||
USE_STEREO = False # Mode Stereoscopic
|
||||
USE_TUNNEL = True # If mode stereo is on, use Tunnel effect
|
||||
SHOW_STAT = False # Show FPS stat (Calibrated for Raspberry Pi)
|
||||
|
||||
DEFAULT_SCREEN_WIDTH=1920
|
||||
DEFAULT_SCREEN_HEIGHT=1080
|
||||
# Change screen size to adapt your config
|
||||
DEFAULT_SCREEN_WIDTH=300
|
||||
DEFAULT_SCREEN_HEIGHT=200
|
||||
DEFAULT_EYE_SEPERATION=0.65
|
||||
|
||||
# height of the camera
|
||||
DEFAULT_AVATAR_EYE_HEIGHT = 4.0
|
||||
DEFAULT_AVATAR_MOVEMENT_SPEED = 1.0
|
||||
DEFAULT_AVATAR_MOVEMENT_SPEED = 0.6
|
||||
|
||||
# two maps for now, so Hall (True) or Forest (False) :)
|
||||
MAP_HALL = True
|
||||
# Select your Avatars here (you can manualy add more)
|
||||
AVATAR_1 = 'Lego'
|
||||
AVATAR_2 = 'Roshi'
|
||||
|
||||
if(USE_STEREO):
|
||||
engine.show_stats=SHOW_STAT
|
||||
|
@ -33,12 +41,9 @@ if(USE_STEREO):
|
|||
engine.hmd_screen_width = DEFAULT_SCREEN_WIDTH
|
||||
engine.hmd_screen_height = DEFAULT_SCREEN_HEIGHT
|
||||
engine.hmd_eye_seperation = DEFAULT_EYE_SEPERATION
|
||||
|
||||
|
||||
engine.init()
|
||||
#engine.use_crosseyed_method=False
|
||||
|
||||
|
||||
# Setup display and initialise pi3d
|
||||
if(USE_STEREO == False):
|
||||
DISPLAY = pi3d.Display.create()
|
||||
|
@ -50,30 +55,53 @@ if(USE_STEREO == False):
|
|||
|
||||
#========================================
|
||||
|
||||
# Create Hero & map
|
||||
# Create Hero & map, Select your avatars here
|
||||
#avatar = avatars.cloud()
|
||||
avatar = avatars.link()
|
||||
avatar2 = avatars.roshi()
|
||||
if AVATAR_1 == 'Link':
|
||||
avatar = avatars.link()
|
||||
elif AVATAR_1 == 'Cloud':
|
||||
avatar = avatars.cloud()
|
||||
elif AVATAR_1 == 'Lego':
|
||||
avatar = avatars.lego()
|
||||
elif AVATAR_1 == 'Roshi':
|
||||
avatar = avatars.roshi()
|
||||
elif AVATAR_1 == 'Goku':
|
||||
avatar = avatars.goku()
|
||||
elif AVATAR_1 == 'Goomba':
|
||||
avatar = avatars.goomba()
|
||||
|
||||
if AVATAR_2 == 'Link':
|
||||
avatar2 = avatars.link()
|
||||
elif AVATAR_2 == 'Cloud':
|
||||
avatar2 = avatars.cloud()
|
||||
elif AVATAR_2 == 'Lego':
|
||||
avatar2 = avatars.lego()
|
||||
elif AVATAR_2 == 'Roshi':
|
||||
avatar2 = avatars.roshi()
|
||||
elif AVATAR_2 == 'Goku':
|
||||
avatar2 = avatars.goku()
|
||||
|
||||
if MAP_HALL:
|
||||
map1 = maps.hall()
|
||||
else:
|
||||
map1 = maps.forest()
|
||||
#avatar = avatars.goku()
|
||||
|
||||
#avatar camera
|
||||
rot = 0.0
|
||||
tilt = -7.0
|
||||
bulle = objects.object()
|
||||
|
||||
#avatar
|
||||
step = [0.0, 0.0, 0.0]
|
||||
xm = 0.0
|
||||
zm = 0.0
|
||||
if MAP_HALL:
|
||||
avhgt = 15
|
||||
avhgt = 15 # doit etre DEFAULT_AVATAR_EYE_HEIGHT
|
||||
ym = avhgt
|
||||
else:
|
||||
avhgt = 9#9
|
||||
avhgt = 9
|
||||
ym = map1.mymap.calcHeight(xm, zm) + avhgt
|
||||
|
||||
step = [0.0, 0.0, 0.0]
|
||||
# camera position
|
||||
rot = 0.0
|
||||
tilt = -7.0
|
||||
norm = None
|
||||
crab = False
|
||||
roll = 0.0
|
||||
|
@ -82,20 +110,21 @@ roll = 0.0
|
|||
#distance_hero = 15
|
||||
synchro_serial=0
|
||||
movement = 0
|
||||
mv_tmp = 0
|
||||
mv_run = 0
|
||||
mv_run_diff = 0
|
||||
avatar_speed = 0.6
|
||||
avatar_speed = DEFAULT_AVATAR_MOVEMENT_SPEED
|
||||
lx = 0
|
||||
ly = 0
|
||||
lz = 0
|
||||
orientation = 0
|
||||
camera_distance = -13
|
||||
|
||||
shader = pi3d.Shader("uv_light")
|
||||
|
||||
shader_light = pi3d.Shader("uv_light")
|
||||
coffimg = pi3d.Texture("../textures/COFFEE.PNG")
|
||||
earth = pi3d.Texture("../textures/rock1.png")
|
||||
flatsh = pi3d.Shader("uv_flat")
|
||||
#font = pi3d.Pngfont("../fonts/GillSansMT.png", (221,0,170,255))
|
||||
font = pi3d.Pngfont("../fonts/GillSansMT.png", (255,80,0,255))
|
||||
mystring = pi3d.String(font=font, string="NOW NO EXCUSES", size=0.8, x=2, y=2, z=2, is_3d=True)
|
||||
mystring2 = pi3d.String(font=font, string="BE YOUR HERO !!!", size=0.8, x=2, y=2, z=2, is_3d=True)
|
||||
|
@ -119,10 +148,6 @@ pos_forarmR = [0, 0, 0]
|
|||
pos_armL = [0, 0, 0]
|
||||
pos_forarmL = [0, 0, 0]
|
||||
body_orientation = 0
|
||||
joystick_h_axis_pos = 0.0
|
||||
joystick_v_axis_pos = 0.0
|
||||
joystick_right_h_axis_pos = 0.0
|
||||
joystick_right_v_axis_pos = 0.0
|
||||
timer =0
|
||||
keep_running = True
|
||||
|
||||
|
@ -132,7 +157,7 @@ if(USE_STEREO == False):
|
|||
CAMERA = pi3d.Camera(absolute=False)
|
||||
|
||||
def roger_handler(sensor, Euler0, Euler1, Euler2):
|
||||
global pos_armR, pos_forarmR, pos_armL, pos_forarmL, timer, body_orientation, step, crab, mv_run, mv_run_diff, xm, zm
|
||||
global pos_armR, pos_forarmR, pos_armL, pos_forarmL, timer, body_orientation, mv_run, mv_run_diff, xm, zm
|
||||
timer += 1
|
||||
print("Sensor:", sensor)
|
||||
if timer == 13:
|
||||
|
@ -150,7 +175,6 @@ def roger_handler(sensor, Euler0, Euler1, Euler2):
|
|||
avatar.armR.rotateToY(math.degrees(-Euler0))
|
||||
#pos_forarmR = [-Euler0 - pos_armL[0], -Euler0 - pos_armL[1], -Euler0 - pos_armL[2]]
|
||||
|
||||
|
||||
elif sensor == 'D':
|
||||
avatar.head.rotateToZ(math.degrees(-Euler1))
|
||||
avatar.head.rotateToX(math.degrees(-Euler2))
|
||||
|
@ -159,10 +183,7 @@ def roger_handler(sensor, Euler0, Euler1, Euler2):
|
|||
#if timer == 1:
|
||||
# print(" Avant : E0 = ", math.degrees(Euler0), " E1 = ", math.degrees(Euler1), " E2 = ", math.degrees(Euler2))
|
||||
elif sensor == 'J':
|
||||
|
||||
|
||||
#print("JOY {:03.2f} {:03.2f}".format(Euler0, Euler1))
|
||||
|
||||
if Euler0 <= 128 and Euler1 <= 128:
|
||||
body_orientation = 270 - Euler1 #
|
||||
elif Euler0 >= 128 and Euler1 <= 128:
|
||||
|
@ -200,8 +221,6 @@ def roger_handler(sensor, Euler0, Euler1, Euler2):
|
|||
|
||||
#print(xm, ym, zm, "Euler : ",joystick_v_axis_pos, joystick_h_axis_pos )
|
||||
|
||||
avatar.center.rotateToY(body_orientation)
|
||||
|
||||
else:
|
||||
print("unhandled sensor:", sensor)
|
||||
|
||||
|
@ -220,7 +239,7 @@ def update():
|
|||
pass
|
||||
else:
|
||||
engine.avatar_y_pos = map1.mymap.calcHeight(x, z+18) + engine.avatar_eye_height +0
|
||||
|
||||
|
||||
if not USE_STEREO:
|
||||
if step != [0.0, 0.0, 0.0]: #i.e. previous loop set movmement
|
||||
pass
|
||||
|
@ -231,6 +250,7 @@ def update():
|
|||
ym += avhgt
|
||||
#print(" Position : ", xm, " === ", ym, " === ",zm, " === ")
|
||||
step = [0.0, 0.0, 0.0]
|
||||
|
||||
|
||||
map1.myecube.position(xm, ym, zm)
|
||||
roll = 0.0
|
||||
|
@ -238,20 +258,17 @@ def update():
|
|||
#avatar.body.position(xm, mymap.calcHeight(xm, zm+distance_hero)+5.5, zm+distance_hero)
|
||||
|
||||
if MAP_HALL:
|
||||
#avatar.body.position(xm, ym+0, zm) # goku
|
||||
avatar.center.position(xm, ym-5, zm) # others
|
||||
avatar2.center.position(-10, 10, 15) # equivalent a -13, 15 et 0
|
||||
mystring.position(-10, ym+2.5, 14.9)
|
||||
mystring2.position(-10, ym+1.5, 14.9)
|
||||
mycone.position(-10, ym+2, 15)
|
||||
myPlane.position(-10, ym+2, 15)
|
||||
#bulle.Position(xm,ym,zm)
|
||||
mystring.position(-10, 18.5, 14.9)
|
||||
mystring2.position(-10, 17.5, 14.9)
|
||||
#bulle.mycone.position(-10, ym+2, 15)
|
||||
myPlane.position(-10, 18, 15)
|
||||
else:
|
||||
avatar.center.position(xm, map1.mymap.calcHeight(xm, zm)+1, zm)
|
||||
avatar.center.position(xm, map1.mymap.calcHeight(xm, zm), zm)
|
||||
avatar2.center.position(-30, map1.mymap.calcHeight(-30, 80), 80)
|
||||
print(xm, ym, zm)
|
||||
|
||||
#roger.body.position(0, mymap.calcHeight(0, 28)+7, 28)
|
||||
#mv_run += 0.05
|
||||
#print(xm, ym, zm)
|
||||
|
||||
if(mv_run_diff > 0):
|
||||
avatar.run(mv_run, mv_run_diff)
|
||||
|
@ -263,7 +280,8 @@ def update():
|
|||
if (synchro_serial > 0):
|
||||
synchro_serial -=1
|
||||
|
||||
mycone.rotateToY(movement)
|
||||
avatar.center.rotateToY(body_orientation)
|
||||
#bulle.mycone.rotateToY(movement)
|
||||
|
||||
mv_run_diff=0
|
||||
lx = xm
|
||||
|
@ -284,12 +302,18 @@ def update_scenario():
|
|||
zm = 13
|
||||
elif 14.5 <= zm and zm <= 16:
|
||||
zm = 16
|
||||
myPlane.draw(shader, [earth])
|
||||
mystring.draw()
|
||||
mystring2.draw()
|
||||
#mycone.draw(shader, [coffimg])
|
||||
#bulle.myPlane.draw(shader_light, [earth])
|
||||
mystring.draw()
|
||||
mystring2.draw()
|
||||
myPlane.draw(shader_light, [earth])
|
||||
|
||||
|
||||
def draw():
|
||||
global mv_tmp
|
||||
mv_tmp += 0.2
|
||||
|
||||
#bulle.mycone.draw(shader, [coffimg])
|
||||
#avatar.handR.rotateToY(50 * math.sin(mv_tmp))
|
||||
avatar2.center.draw()
|
||||
avatar.center.draw()
|
||||
map1.mymap.draw()
|
||||
|
@ -299,26 +323,44 @@ def draw():
|
|||
|
||||
|
||||
def read_inputs():
|
||||
global step, crab, mymouse, my, mx, rot, tilt, keep_running, xm, zm
|
||||
global mymouse, my, mx, rot, tilt, keep_running, xm, zm, mv_run, mv_run_diff, body_orientation
|
||||
|
||||
#Press ESCAPE to terminate
|
||||
k = mykeys.read()
|
||||
k = mykeys.read() # Read Keyboard inputs
|
||||
|
||||
if k >-1:
|
||||
if k == 119: #key w forward
|
||||
zm+=1
|
||||
mv_run += math.fabs(avatar_speed*2/3)
|
||||
mv_run_diff = 1
|
||||
body_orientation = 180
|
||||
elif k == 115: #kry s back
|
||||
zm+= -1
|
||||
elif k == 97: #key a crab left
|
||||
xm+=1
|
||||
elif k == 100: #key d crab right
|
||||
mv_run += math.fabs(avatar_speed*2/3)
|
||||
mv_run_diff = 1
|
||||
body_orientation = 0
|
||||
elif k == 97: #key a left
|
||||
xm+= -1
|
||||
mv_run += math.fabs(avatar_speed*2/3)
|
||||
mv_run_diff = 1
|
||||
body_orientation = 90
|
||||
elif k == 100: #key d right
|
||||
xm+=1
|
||||
mv_run += math.fabs(avatar_speed*2/3)
|
||||
mv_run_diff = 1
|
||||
body_orientation = 270
|
||||
elif k == 112: #key p picture
|
||||
pi3d.screenshot("forestWalk" + str(scshots) + ".jpg")
|
||||
scshots += 1
|
||||
elif k == 10: #key RETURN
|
||||
mc = 0
|
||||
elif k == 27: #Escape key
|
||||
keep_running = False
|
||||
elif k == 27: #Escape key to exit
|
||||
print("***** Try to quit *****")
|
||||
if USE_STEREO:
|
||||
engine.hmd.close()
|
||||
engine.DISPLAY.destroy()
|
||||
engine.keep_running = False
|
||||
else:
|
||||
keep_running = False
|
||||
mykeys.close()
|
||||
if USE_SERIAL:
|
||||
ser.stop()
|
||||
|
@ -336,7 +378,7 @@ def read_inputs():
|
|||
|
||||
|
||||
def camera_update():
|
||||
global xm, ym, zm, rot, tilt, step, norm, crab
|
||||
global xm, ym, zm, rot, tilt, norm
|
||||
camRad = [camera_distance, camera_distance, camera_distance]
|
||||
#print("DBG {:03.2f},{:03.2f},{:03.2f} dist {:03.2f},{:03.2f},{:03.2f}".format(xm, ym, zm, *step))
|
||||
#xm, ym, zm = CAMERA.relocate(rot, tilt, point=[xm, ym, zm], distance=step,
|
||||
|
@ -348,11 +390,10 @@ def camera_update():
|
|||
CAMERA.relocate(rot, tilt, point=[xm, map1.mymap.calcHeight(xm, zm)+3, zm], distance=camRad)
|
||||
CAMERA.rotateZ(roll)
|
||||
|
||||
#CAMERA.relocate(rot, tilt, [0.0, 0.0, 0.0], camRad)
|
||||
|
||||
# Main loop
|
||||
if(USE_STEREO):
|
||||
while engine.DISPLAY.loop_running() or engine.keep_running:
|
||||
#read_inputs()
|
||||
engine.poll_inputs()
|
||||
engine.update_avatar()
|
||||
update()
|
||||
|
@ -364,11 +405,11 @@ if(USE_STEREO):
|
|||
|
||||
else: # not stereo
|
||||
while DISPLAY.loop_running() or keep_running:
|
||||
read_inputs()
|
||||
camera_update()
|
||||
update()
|
||||
update_scenario()
|
||||
draw()
|
||||
read_inputs()
|
||||
print(" STOP STOP")
|
||||
|
||||
|
||||
|
|
|
@ -19,75 +19,114 @@ class BaseAvatar:
|
|||
setattr(self, name, BaseAvatar.FakeModel())
|
||||
|
||||
|
||||
class cloud(object):
|
||||
class cloud(BaseAvatar):
|
||||
|
||||
def __init__(self):
|
||||
self.body = pi3d.Model(file_string="../Blender/FF7/Cloud Board Piece/Cloud_Body.obj", name="monument")
|
||||
#body.translate(90.0, -mymap.calcHeight(100.0, 235) + 20.0, 235.0)
|
||||
super().__init__()
|
||||
shader = pi3d.Shader("uv_flat")
|
||||
self.body.set_shader(shader)
|
||||
self.body.scale(6, 6, 6)
|
||||
#self.body.rotateToY(90)
|
||||
|
||||
self.head = pi3d.Model(file_string="../Blender/FF7/Cloud Board Piece/Cloud_head.obj", name="monument", cy=-0.88, cz=-0.0)
|
||||
self.center = pi3d.Model(file_string="../Blender/FF7/Cloud Board Piece/Cloud_butt.obj")
|
||||
self.center.set_shader(shader)
|
||||
self.center.scale(6, 6, 6)
|
||||
|
||||
self.body = pi3d.Model(file_string="../Blender/FF7/Cloud Board Piece/Cloud_Body.obj")
|
||||
self.body.set_shader(shader)
|
||||
self.head = pi3d.Model(file_string="../Blender/FF7/Cloud Board Piece/Cloud_head.obj", cy=-0.88, cz=-0.0)
|
||||
self.head.set_shader(shader)
|
||||
self.butt = pi3d.Model(file_string="../Blender/FF7/Cloud Board Piece/Cloud_butt.obj", name="monument")
|
||||
self.butt.set_shader(shader)
|
||||
|
||||
self.armR = pi3d.Model(file_string="../Blender/FF7/Cloud Board Piece/Cloud_armR.obj", name="monument", cy=-0.85, cx=0.08, cz=-0.06)
|
||||
|
||||
self.armR = pi3d.Model(file_string="../Blender/FF7/Cloud Board Piece/Cloud_armR.obj", cy=-0.85, cx=0.08, cz=-0.06)
|
||||
self.armR.set_shader(shader)
|
||||
self.forarmR = pi3d.Model(file_string="../Blender/FF7/Cloud Board Piece/Cloud_forarmR.obj", name="monument", cy=-0.85, cx=0.23, cz=-0)
|
||||
self.forarmR = pi3d.Model(file_string="../Blender/FF7/Cloud Board Piece/Cloud_forarmR.obj", cy=-0.85, cx=0.23, cz=-0)
|
||||
self.forarmR.set_shader(shader)
|
||||
self.handR = pi3d.Model(file_string="../Blender/FF7/Cloud Board Piece/Cloud_handR.obj", name="monument", cy=-8.8, cx=4.4, cz=-0.7)
|
||||
self.handR = pi3d.Model(file_string="../Blender/FF7/Cloud Board Piece/Cloud_handR.obj", cy=-8.8, cx=4.4, cz=-0.7)
|
||||
self.handR.set_shader(shader)
|
||||
|
||||
self.armL = pi3d.Model(file_string="../Blender/FF7/Cloud Board Piece/Cloud_armL.obj", cy=-0.85, cx=-0.08, cz=-0.02)
|
||||
self.armL.set_shader(shader)
|
||||
self.forarmL = pi3d.Model(file_string="../Blender/FF7/Cloud Board Piece/Cloud_forarmL.obj", name="monument", cy=-0.65, cx=-0.12, cz=-0.04)
|
||||
self.forarmL = pi3d.Model(file_string="../Blender/FF7/Cloud Board Piece/Cloud_forarmL.obj", cy=-0.65, cx=-0.12, cz=-0.04)
|
||||
self.forarmL.set_shader(shader)
|
||||
|
||||
self.legL = pi3d.Model(file_string="../Blender/FF7/Cloud Board Piece/Cloud_legL.obj", name="monument", cy = -0.53)
|
||||
self.legL = pi3d.Model(file_string="../Blender/FF7/Cloud Board Piece/Cloud_legL.obj", cy = -0.53)
|
||||
self.legL.set_shader(shader)
|
||||
#self.legL.scale(0.75, 0.75, 0.75)
|
||||
self.footL = pi3d.Model(file_string="../Blender/FF7/Cloud Board Piece/Cloud_footL.obj", name="monument", cy = -0.28)
|
||||
self.footL = pi3d.Model(file_string="../Blender/FF7/Cloud Board Piece/Cloud_footL.obj", cy = -0.28)
|
||||
self.footL.set_shader(shader)
|
||||
#self.footL.scale(1.1, 1.1, 1.1)
|
||||
|
||||
self.legR = pi3d.Model(file_string="../Blender/FF7/Cloud Board Piece/Cloud_legR.obj", name="monument", cy = -0.53)
|
||||
self.legR = pi3d.Model(file_string="../Blender/FF7/Cloud Board Piece/Cloud_legR.obj", cy = -0.53)
|
||||
self.legR.set_shader(shader)
|
||||
#self.legR.scale(0.75, 0.75, 0.75)
|
||||
self.footR = pi3d.Model(file_string="../Blender/FF7/Cloud Board Piece/Cloud_footR.obj", name="monument", cy = -0.28)
|
||||
self.footR = pi3d.Model(file_string="../Blender/FF7/Cloud Board Piece/Cloud_footR.obj", cy = -0.28)
|
||||
self.footR.set_shader(shader)
|
||||
|
||||
|
||||
self.center.add_child(self.body)
|
||||
self.body.add_child(self.head)
|
||||
self.body.add_child(self.butt)
|
||||
self.body.add_child(self.armR)
|
||||
self.armR.add_child(self.forarmR)
|
||||
self.forarmR.add_child(self.handR)
|
||||
self.body.add_child(self.armL)
|
||||
self.armL.add_child(self.forarmL)
|
||||
|
||||
self.butt.add_child(self.legL)
|
||||
self.center.add_child(self.legL)
|
||||
self.legL.add_child(self.footL)
|
||||
self.butt.add_child(self.legR)
|
||||
self.center.add_child(self.legR)
|
||||
self.legR.add_child(self.footR)
|
||||
|
||||
def run(self, position):
|
||||
self.legR.rotateToX(20 * math.sin(position))
|
||||
self.legL.rotateToX(-20 * math.sin(position))
|
||||
self.footR.rotateToX(-15+15 * math.sin(position))
|
||||
self.footL.rotateToX(-15-15 * math.sin(position))
|
||||
def run(self, position, diff):
|
||||
#compute motion
|
||||
if diff <= 0.25:
|
||||
self.legR.rotateToX(15 * math.sin(position))
|
||||
self.legL.rotateToX(-15 * math.sin(position))
|
||||
self.footR.rotateToX(-15+ 15 * math.sin(position))
|
||||
self.footL.rotateToX(-15 -15 * math.sin(position))
|
||||
|
||||
self.armL.rotateToZ(280)
|
||||
self.armR.rotateToZ(80)
|
||||
self.armR.rotateToY(25.0 * math.sin(position))
|
||||
self.armL.rotateToY(25.0 * math.sin(position))
|
||||
|
||||
self.body.rotateToY(10.0 * math.sin(position))
|
||||
self.head.rotateToY(-8.0 * math.sin(position))
|
||||
|
||||
else:
|
||||
positionRun = position
|
||||
self.legR.rotateToX(25 * math.sin(positionRun))
|
||||
self.legL.rotateToX(-25 * math.sin(positionRun))
|
||||
self.footR.rotateToX(-20+ 20 * math.sin(positionRun))
|
||||
self.footL.rotateToX(-20 -20 * math.sin(positionRun))
|
||||
|
||||
self.armL.rotateToZ(300)
|
||||
self.armR.rotateToZ(60)
|
||||
self.armR.rotateToY(35.0 * math.sin(positionRun))
|
||||
self.armL.rotateToY(35.0 * math.sin(positionRun))
|
||||
|
||||
self.body.rotateToY(10.0 * math.sin(positionRun))
|
||||
self.body.rotateToX(-15.0)
|
||||
self.head.rotateToY(-8.0 * math.sin(positionRun))
|
||||
self.head.rotateToX(10.0)
|
||||
|
||||
def stand(self):
|
||||
|
||||
self.legR.rotateToX(0)
|
||||
self.legL.rotateToX(0)
|
||||
self.footR.rotateToX(0)
|
||||
self.footL.rotateToX(0)
|
||||
|
||||
self.armL.rotateToZ(280)
|
||||
self.armR.rotateToZ(80)
|
||||
self.armR.rotateToY(0)
|
||||
self.armL.rotateToY(0)
|
||||
|
||||
self.body.rotateToY(0)
|
||||
self.body.rotateToX(0)
|
||||
self.head.rotateToY(0)
|
||||
self.head.rotateToX(0)
|
||||
|
||||
def jump(self, position):
|
||||
pass
|
||||
#compute motion
|
||||
|
||||
class lego(BaseAvatar):
|
||||
|
||||
def __init__(self):
|
||||
super().__init__()
|
||||
|
||||
|
||||
self.center = pi3d.Model(file_string="../Blender/lego/Emmet_body.obj")
|
||||
shader = pi3d.Shader("uv_light")
|
||||
self.center.set_shader(shader)
|
||||
|
@ -121,7 +160,6 @@ class lego(BaseAvatar):
|
|||
|
||||
def jump(self, position):
|
||||
pass
|
||||
#compute motion
|
||||
|
||||
def stand(self):
|
||||
|
||||
|
@ -148,31 +186,37 @@ class roshi(BaseAvatar):
|
|||
shader = pi3d.Shader("uv_flat")
|
||||
self.center.set_shader(shader)
|
||||
self.center.scale(0.3,0.3,0.3)
|
||||
def run(self, position, diff):
|
||||
pass
|
||||
def stand(self):
|
||||
pass
|
||||
|
||||
class goomba(object):
|
||||
class goomba(BaseAvatar):
|
||||
|
||||
def __init__(self):
|
||||
self.body = pi3d.Model(file_string="../Blender/goomba.goomba.obj")
|
||||
super().__init__()
|
||||
self.center = pi3d.Model(file_string="../Blender/goomba/goomba.obj")
|
||||
shader = pi3d.Shader("uv_flat")
|
||||
self.body.set_shader(shader)
|
||||
self.body.scale(0.3,0.3,0.3)
|
||||
self.center.set_shader(shader)
|
||||
self.center.scale(0.1,0.1,0.1)
|
||||
def run(self, position, diff):
|
||||
self.center.rotateToX(8.0 * math.sin(position))
|
||||
self.center.rotateToZ(8.0 * math.sin(position))
|
||||
def stand(self):
|
||||
self.body.rotateToX(0)
|
||||
self.body.rotateToZ(0)
|
||||
|
||||
|
||||
class link(object):
|
||||
class link(BaseAvatar):
|
||||
|
||||
def __init__(self):
|
||||
|
||||
super().__init__()
|
||||
self.center = pi3d.Model(file_string="../Blender/Zelda/Custom_Link/Link_full_butt.obj")
|
||||
shader = pi3d.Shader("uv_flat")
|
||||
self.center.set_shader(shader)
|
||||
|
||||
self.center.scale(0.6, 0.6, 0.6)
|
||||
|
||||
self.body = pi3d.Model(file_string="../Blender/Zelda/Custom_Link/Link_body.obj", cy=-7.4)
|
||||
#body.translate(90.0, -mymap.calcHeight(100.0, 235) + 20.0, 235.0)
|
||||
self.body.set_shader(shader)
|
||||
|
||||
#self.body.rotateToY(90)
|
||||
|
||||
self.head = pi3d.Model(file_string="../Blender/Zelda/Custom_Link/Link_head.obj", cy=-10, cz=-0.5)
|
||||
self.head.set_shader(shader)
|
||||
|
||||
|
@ -192,25 +236,21 @@ class link(object):
|
|||
|
||||
self.legL = pi3d.Model(file_string="../Blender/Zelda/Custom_Link/Link_legL.obj", cy = -6)
|
||||
self.legL.set_shader(shader)
|
||||
#self.legL.scale(0.75, 0.75, 0.75)
|
||||
self.footL = pi3d.Model(file_string="../Blender/Zelda/Custom_Link/Link_footL.obj", cy = -3)
|
||||
self.footL.set_shader(shader)
|
||||
#self.footL.scale(1.1, 1.1, 1.1)
|
||||
|
||||
self.legR = pi3d.Model(file_string="../Blender/Zelda/Custom_Link/Link_legR.obj", cy = -6)
|
||||
self.legR.set_shader(shader)
|
||||
#self.legR.scale(0.75, 0.75, 0.75)
|
||||
self.footR = pi3d.Model(file_string="../Blender/Zelda/Custom_Link/Link_footR.obj", cy = -3)
|
||||
self.footR.set_shader(shader)
|
||||
|
||||
#self.footR.scale(1.0, 1.0, 1.0)
|
||||
|
||||
self.center.add_child(self.body)
|
||||
self.body.add_child(self.head)
|
||||
|
||||
self.body.add_child(self.armR)
|
||||
self.armR.add_child(self.forarmR)
|
||||
self.forarmR.add_child(self.handR)
|
||||
self.center.add_child(self.body)
|
||||
#self.body.add_child(self.legs)
|
||||
|
||||
self.body.add_child(self.armL)
|
||||
self.armL.add_child(self.forarmL)
|
||||
self.forarmL.add_child(self.handL)
|
||||
|
@ -271,132 +311,171 @@ class link(object):
|
|||
self.head.rotateToX(0)
|
||||
|
||||
def jump(self, position):
|
||||
#compute motion
|
||||
self.armL.rotateToX(20 * math.sin(position))
|
||||
self.armR.rotateToX(-20 * math.sin(position))
|
||||
|
||||
class goku(object):
|
||||
class goku(BaseAvatar):
|
||||
|
||||
def __init__(self):
|
||||
def __init__(self):
|
||||
super().__init__()
|
||||
shader = pi3d.Shader("uv_light")
|
||||
|
||||
self.body = pi3d.Model(file_string="../Blender/DBZ/Goku/goku_body.obj", name="monument")
|
||||
#body.translate(90.0, -mymap.calcHeight(100.0, 235) + 20.0, 235.0)
|
||||
shader = pi3d.Shader("uv_light")
|
||||
self.body.set_shader(shader)
|
||||
self.body.scale(0.20, 0.20, 0.20)
|
||||
self.center = pi3d.Model(file_string="../Blender/DBZ/Goku/goku_butt.obj")
|
||||
self.center.set_shader(shader)
|
||||
self.center.scale(0.2, 0.2, 0.2)
|
||||
|
||||
self.head = pi3d.Model(file_string="../Blender/DBZ/Goku/goku_head.obj", name="monument", x=0,y=9.2, z=0.8)
|
||||
self.head.set_shader(shader)
|
||||
self.head.scale(1.25, 1.25, 1.25)
|
||||
self.legs = pi3d.Model(file_string="../Blender/DBZ/Goku/goku_legs.obj", name="monument", x=-3,y=-22.5)
|
||||
self.legs.set_shader(shader)
|
||||
self.butt = pi3d.Model(file_string="../Blender/DBZ/Goku/goku_but.obj", name="monument", x=0, y=0.5, z=2.2)
|
||||
self.butt.set_shader(shader)
|
||||
self.butt.scale(1.2, 1.2, 1.2)
|
||||
self.body = pi3d.Model(file_string="../Blender/DBZ/Goku/goku_body.obj", cy=-23)
|
||||
self.body.set_shader(shader)
|
||||
|
||||
self.head = pi3d.Model(file_string="../Blender/DBZ/Goku/goku_head.obj", cy=-33, cz=0.5)
|
||||
self.head.set_shader(shader)
|
||||
self.legs = pi3d.Model(file_string="../Blender/DBZ/Goku/goku_legs.obj")
|
||||
self.legs.set_shader(shader)
|
||||
|
||||
self.armR = pi3d.Model(file_string="../Blender/DBZ/Goku/goku_armR.obj", name="monument", x=-4.8, y=4.6, z=1.2)
|
||||
self.armR.set_shader(shader)
|
||||
self.handR = pi3d.Model(file_string="../Blender/DBZ/Goku/goku_handR.obj", name="monument", x=-6.1, y=-0, z=+1, rx=270)
|
||||
self.handR.set_shader(shader)
|
||||
self.armR = pi3d.Model(file_string="../Blender/DBZ/Goku/goku_armR.obj", cy=-29, cx=4, cz=0.4)
|
||||
self.armR.set_shader(shader)
|
||||
self.handR = pi3d.Model(file_string="../Blender/DBZ/Goku/goku_handR.obj", cy=-29, cx=8.5, cz=0)
|
||||
self.handR.set_shader(shader)
|
||||
|
||||
self.armL = pi3d.Model(file_string="../Blender/DBZ/Goku/goku_armL.obj", name="monument", x=4, y=4.2, z=0)
|
||||
self.armL.set_shader(shader)
|
||||
#self.armL.scale(3, 3, 3)
|
||||
self.handL = pi3d.Model(file_string="../Blender/DBZ/Goku/goku_handL.obj", name="monument", x=5, y=-1, z=0.5, rx=270)
|
||||
self.handL.set_shader(shader)
|
||||
self.armL = pi3d.Model(file_string="../Blender/DBZ/Goku/goku_armL.obj", cy=-29, cx=-5, cz=0.4)
|
||||
self.armL.set_shader(shader)
|
||||
self.handL = pi3d.Model(file_string="../Blender/DBZ/Goku/goku_handL.obj", cy=-29, cx=-11, cz=0.8)
|
||||
self.handL.set_shader(shader)
|
||||
|
||||
self.legL = pi3d.Model(file_string="../Blender/DBZ/Goku/goku_legL.obj", name="monument", x=2.9, y=-3, z=-1)
|
||||
self.legL.set_shader(shader)
|
||||
self.legL.scale(0.75, 0.75, 0.75)
|
||||
self.footL = pi3d.Model(file_string="../Blender/DBZ/Goku/goku_foot.obj", name="monument", x=0, y=-24, z=-2.5)
|
||||
self.footL.set_shader(shader)
|
||||
self.footL.scale(1.1, 1.1, 1.1)
|
||||
self.legL = pi3d.Model(file_string="../Blender/DBZ/Goku/goku_legL.obj", cy = -21)
|
||||
self.legL.set_shader(shader)
|
||||
self.footL = pi3d.Model(file_string="../Blender/DBZ/Goku/goku_footL.obj", cy = -15)
|
||||
self.footL.set_shader(shader)
|
||||
|
||||
self.legR = pi3d.Model(file_string="../Blender/DBZ/Goku/goku_legL.obj", name="monument", x=-1.5, y=-3, z=-1)
|
||||
self.legR.set_shader(shader)
|
||||
self.legR.scale(0.75, 0.75, 0.75)
|
||||
self.footR = pi3d.Model(file_string="../Blender/DBZ/Goku/goku_foot.obj", name="monument", x=-0, y=-24, z=-2.5)
|
||||
self.footR.set_shader(shader)
|
||||
|
||||
self.footR.scale(1.0, 1.0, 1.0)
|
||||
self.legR = pi3d.Model(file_string="../Blender/DBZ/Goku/goku_legR.obj", cy = -21)
|
||||
self.legR.set_shader(shader)
|
||||
self.footR = pi3d.Model(file_string="../Blender/DBZ/Goku/goku_footR.obj", cy = -15)
|
||||
self.footR.set_shader(shader)
|
||||
|
||||
self.center.add_child(self.body)
|
||||
self.body.add_child(self.head)
|
||||
|
||||
self.body.add_child(self.armR)
|
||||
self.armR.add_child(self.handR)
|
||||
self.body.add_child(self.armL)
|
||||
self.armL.add_child(self.handL)
|
||||
|
||||
self.center.add_child(self.legL)
|
||||
self.legL.add_child(self.footL)
|
||||
self.center.add_child(self.legR)
|
||||
self.legR.add_child(self.footR)
|
||||
|
||||
def run(self, position, diff):
|
||||
#compute motion
|
||||
if diff <= 0.25:
|
||||
self.legR.rotateToX(15 * math.sin(position))
|
||||
self.legL.rotateToX(-15 * math.sin(position))
|
||||
self.footR.rotateToX(-15+ 15 * math.sin(position))
|
||||
self.footL.rotateToX(-15 -15 * math.sin(position))
|
||||
|
||||
self.armL.rotateToZ(280)
|
||||
self.armR.rotateToZ(80)
|
||||
self.armR.rotateToY(25.0 * math.sin(position))
|
||||
self.armL.rotateToY(25.0 * math.sin(position))
|
||||
|
||||
self.body.rotateToY(10.0 * math.sin(position))
|
||||
self.head.rotateToY(-8.0 * math.sin(position))
|
||||
|
||||
else:
|
||||
positionRun = position
|
||||
self.legR.rotateToX(25 * math.sin(positionRun))
|
||||
self.legL.rotateToX(-25 * math.sin(positionRun))
|
||||
self.footR.rotateToX(-20+ 20 * math.sin(positionRun))
|
||||
self.footL.rotateToX(-20 -20 * math.sin(positionRun))
|
||||
|
||||
self.armL.rotateToZ(300)
|
||||
self.armR.rotateToZ(60)
|
||||
self.armR.rotateToY(35.0 * math.sin(positionRun))
|
||||
self.armL.rotateToY(35.0 * math.sin(positionRun))
|
||||
self.handL.rotateToZ(80)
|
||||
self.handR.rotateToZ(-80)
|
||||
self.handL.rotateToY(80)
|
||||
self.handR.rotateToY(-80)
|
||||
|
||||
self.body.rotateToY(10.0 * math.sin(positionRun))
|
||||
self.body.rotateToX(-15.0)
|
||||
self.head.rotateToY(-8.0 * math.sin(positionRun))
|
||||
self.head.rotateToX(10.0)
|
||||
|
||||
def stand(self):
|
||||
|
||||
self.legR.rotateToX(0)
|
||||
self.legL.rotateToX(0)
|
||||
self.footR.rotateToX(0)
|
||||
self.footL.rotateToX(0)
|
||||
|
||||
self.armL.rotateToZ(300)
|
||||
self.armR.rotateToZ(60)
|
||||
self.armR.rotateToY(0)
|
||||
self.armL.rotateToY(0)
|
||||
self.handL.rotateToY(0)
|
||||
self.handR.rotateToY(0)
|
||||
self.handL.rotateToZ(0)
|
||||
self.handR.rotateToZ(0)
|
||||
|
||||
self.body.rotateToY(0)
|
||||
self.body.rotateToX(0)
|
||||
self.head.rotateToY(0)
|
||||
self.head.rotateToX(0)
|
||||
|
||||
def jump(self, position):
|
||||
self.armL.rotateToX(20 * math.sin(position))
|
||||
self.armR.rotateToX(-20 * math.sin(position))
|
||||
|
||||
class guy(BaseAvatar):
|
||||
|
||||
def __init__(self):
|
||||
super().__init__()
|
||||
#Create human
|
||||
#porl = pi3d.Model(file_string="Blender/Porl.obj", name="monument")
|
||||
#porl.translate(90.0, -mymap.calcHeight(100.0, 235) + 12.0, 235.0)
|
||||
#porl.scale(5.0, 5.0, 5.0)
|
||||
|
||||
self.body = pi3d.Model(file_string="../Blender/pi_Porl_Body.obj")
|
||||
#body.translate(90.0, -mymap.calcHeight(100.0, 235) + 20.0, 235.0)
|
||||
self.body.scale(1.0, 1.0, 1.0)
|
||||
|
||||
self.head = pi3d.Model(file_string="../Blender/pi_Porl_Head.obj", y=1.84)
|
||||
self.armR = pi3d.Model(file_string="../Blender/pi_Porl_Arm_Right.obj", x=-0.5, y=1.64, z=0.1)
|
||||
self.handR = pi3d.Model(file_string="../Blender/pi_Porl_Hand_Right.obj", x=-0.75)
|
||||
|
||||
self.legs = pi3d.Model(file_string="../Blender/pi_Porl_Legs.obj", y=-3.7)
|
||||
self.armL = pi3d.Model(file_string="../Blender/pi_Porl_Arm_Left.obj", x=0.5, y=1.64, z=0.1)
|
||||
self.handL = pi3d.Model(file_string="../Blender/pi_Porl_Hand_Left.obj", x=0.75)
|
||||
|
||||
self.body.add_child(self.head)
|
||||
self.body.add_child(self.armR)
|
||||
self.armR.add_child(self.handR)
|
||||
self.body.add_child(self.legs)
|
||||
self.body.add_child(self.armL)
|
||||
self.armL.add_child(self.handL)
|
||||
|
||||
def sitDown(self):
|
||||
#motion sitdown
|
||||
pass
|
||||
|
||||
def play(self, position):
|
||||
#motion sitdown
|
||||
pass
|
||||
|
||||
def jump(self):
|
||||
#motion sitdown
|
||||
pass
|
||||
|
||||
def run(self, position):
|
||||
#compute motion
|
||||
self.armL.rotateToX(25.0 * math.sin(position))
|
||||
self.handL.rotateToX(30)
|
||||
self.armR.rotateToX(-25.0 * math.sin(position))
|
||||
self.handR.rotateToX(30.0)
|
||||
|
||||
|
||||
self.body.add_child(self.head)
|
||||
self.body.add_child(self.armR)
|
||||
self.armR.add_child(self.handR)
|
||||
self.body.add_child(self.butt)
|
||||
#self.body.add_child(self.legs)
|
||||
self.body.add_child(self.armL)
|
||||
self.armL.add_child(self.handL)
|
||||
|
||||
self.butt.add_child(self.legL)
|
||||
self.legL.add_child(self.footL)
|
||||
self.butt.add_child(self.legR)
|
||||
self.legR.add_child(self.footR)
|
||||
|
||||
def run(self, position):
|
||||
#compute motion
|
||||
self.legR.rotateToX(15 * math.sin(position))
|
||||
self.legL.rotateToX(-15 * math.sin(position))
|
||||
self.armL.rotateToZ(305)
|
||||
self.armR.rotateToZ(80)
|
||||
self.armR.rotateToY(25.0 * math.sin(position))
|
||||
self.armL.rotateToY(25.0 * math.sin(position))
|
||||
|
||||
class guy(object):
|
||||
|
||||
def __init__(self):
|
||||
|
||||
#Create human
|
||||
#porl = pi3d.Model(file_string="Blender/Porl.obj", name="monument")
|
||||
#porl.translate(90.0, -mymap.calcHeight(100.0, 235) + 12.0, 235.0)
|
||||
#porl.scale(5.0, 5.0, 5.0)
|
||||
|
||||
self.body = pi3d.Model(file_string="../Blender/pi_Porl_Body.obj", name="monument")
|
||||
#body.translate(90.0, -mymap.calcHeight(100.0, 235) + 20.0, 235.0)
|
||||
self.body.scale(1.0, 1.0, 1.0)
|
||||
|
||||
self.head = pi3d.Model(file_string="../Blender/pi_Porl_Head.obj", name="monument", y=1.84)
|
||||
#head.translate(90.0, -mymap.calcHeight(100.0, 235) + 29.6, 235.0)
|
||||
self.armR = pi3d.Model(file_string="../Blender/pi_Porl_Arm_Right.obj", name="monument", x=-0.5, y=1.64, z=0.1)
|
||||
#arm.translate(87.5, -mymap.calcHeight(100.0, 235) + 28.2, 235.5)
|
||||
self.handR = pi3d.Model(file_string="../Blender/pi_Porl_Hand_Right.obj", name="monument", x=-0.75)
|
||||
#hand.translate(83.5, -mymap.calcHeight(100.0, 235) + 28.2, 235.5)
|
||||
|
||||
self.legs = pi3d.Model(file_string="../Blender/pi_Porl_Legs.obj", name="monument", y=-3.7)
|
||||
self.armL = pi3d.Model(file_string="../Blender/pi_Porl_Arm_Left.obj", name="monument", x=0.5, y=1.64, z=0.1)
|
||||
self.handL = pi3d.Model(file_string="../Blender/pi_Porl_Hand_Left.obj", name="monument", x=0.75)
|
||||
|
||||
|
||||
self.body.add_child(self.head)
|
||||
self.body.add_child(self.armR)
|
||||
self.armR.add_child(self.handR)
|
||||
self.body.add_child(self.legs)
|
||||
self.body.add_child(self.armL)
|
||||
self.armL.add_child(self.handL)
|
||||
|
||||
|
||||
def sitDown(self):
|
||||
#motion sitdown
|
||||
pass
|
||||
|
||||
def play(self, position):
|
||||
#motion sitdown
|
||||
pass
|
||||
|
||||
def jump(self):
|
||||
#motion sitdown
|
||||
pass
|
||||
|
||||
def run(self, position):
|
||||
#compute motion
|
||||
self.armL.rotateToX(25.0 * math.sin(position))
|
||||
self.handL.rotateToX(30)
|
||||
self.armR.rotateToX(-25.0 * math.sin(position))
|
||||
self.handR.rotateToX(30.0)
|
||||
|
||||
|
||||
def test(self, position):
|
||||
#compute motion
|
||||
pass
|
||||
def test(self, position):
|
||||
#compute motion
|
||||
pass
|
||||
|
||||
|
|
|
@ -0,0 +1,45 @@
|
|||
#!/bin/python
|
||||
|
||||
|
||||
import pi3d
|
||||
import math,random
|
||||
|
||||
|
||||
shader_light = pi3d.Shader("uv_light")
|
||||
earth = pi3d.Texture("../textures/rock1.png")
|
||||
flatsh = pi3d.Shader("uv_flat")
|
||||
|
||||
class object(object):
|
||||
|
||||
def __init__(self):
|
||||
global flatsh
|
||||
|
||||
#font = pi3d.Pngfont("../fonts/GillSansMT.png", (221,0,170,255))
|
||||
font = pi3d.Pngfont("../fonts/GillSansMT.png", (255,80,0,255))
|
||||
self.mystring = pi3d.String(font=font, string="NOW NO EXCUSES", size=0.8, x=2, y=2, z=2, is_3d=True)
|
||||
self.mystring2 = pi3d.String(font=font, string="BE YOUR HERO !!!", size=0.8, x=2, y=2, z=2, is_3d=True)
|
||||
#mystring.translate(0.0, 0.0, 1)
|
||||
self.mystring.scale(3, 3, 3)
|
||||
self.mystring.set_shader(flatsh)
|
||||
self.mystring2.scale(3, 3, 3)
|
||||
self.mystring2.set_shader(flatsh)
|
||||
self.myPlane = pi3d.Plane(w=7, h=1.8, name="plane")
|
||||
self.myTriangle = pi3d.Triangle(sx=2, sy=2, sz=2, name="triangle", rz = 180)
|
||||
self.mycone = pi3d.Cone(radius=1, height=2, sides=24, name="Cone", rz=180)
|
||||
#self.myTriangle.set_shader(shader)
|
||||
|
||||
def Position(self, xm, ym, zm):
|
||||
self.mystring.position(-10, ym+2.5, 14.9)
|
||||
self.mystring2.position(-10, ym+1.5, 14.9)
|
||||
self.mycone.position(-10, ym+2, 15)
|
||||
self.myPlane.position(-10, ym+2, 15)
|
||||
|
||||
def Draw(self):
|
||||
global shader_light, earth
|
||||
#self.myPlane.draw(shader_light, [earth])
|
||||
#self.mystring.draw()
|
||||
#self.mystring2.draw()
|
||||
|
||||
|
||||
|
||||
|