Merge branch 'master' into dev

This commit is contained in:
NathanSweet 2016-11-26 23:51:56 +01:00
commit 66b5f49f2e
203 changed files with 20367 additions and 11661 deletions

View File

@ -10,7 +10,7 @@ The Spine Runtimes are developed with the intent to be used with data exported f
## Spine version
spine-as3 works with data exported from Spine 3.4.02.
spine-as3 works with data exported from Spine 3.5.xx.
spine-as3 supports all Spine features, including meshes. If using the `spine.flash` classes for rendering, meshes are not supported.

View File

@ -14,7 +14,7 @@ com.powerflasher.fdt.core.PassManifests=true
com.powerflasher.fdt.core.PassRsls=false
com.powerflasher.fdt.core.PassSwcs=true
com.powerflasher.fdt.core.PlatformType=WEB
com.powerflasher.fdt.core.PlayerVersion=22.0
com.powerflasher.fdt.core.PlayerVersion=23.0
com.powerflasher.fdt.core.ProjectTypeHint=Web
com.powerflasher.fdt.core.Runtime=Flash_Player
com.powerflasher.fdt.core.SdkName=Flex 4.6.0

View File

@ -14,7 +14,7 @@ com.powerflasher.fdt.core.PassManifests=true
com.powerflasher.fdt.core.PassRsls=false
com.powerflasher.fdt.core.PassSwcs=true
com.powerflasher.fdt.core.PlatformType=WEB
com.powerflasher.fdt.core.PlayerVersion=22.0
com.powerflasher.fdt.core.PlayerVersion=23.0
com.powerflasher.fdt.core.ProjectTypeHint=Web
com.powerflasher.fdt.core.Runtime=Flash_Player
com.powerflasher.fdt.core.SdkName=Flex 4.6.0

View File

@ -727,7 +727,7 @@ public class SkeletonJson {
import spine.attachments.MeshAttachment;
internal class LinkedMesh {
class LinkedMesh {
internal var parent:String, skin:String;
internal var slotIndex:int;
internal var mesh:MeshAttachment;

View File

@ -96,9 +96,7 @@ public class AnimationState {
}
continue;
}
updateMixingFrom(current, delta, true);
} else {
updateMixingFrom(current, delta, true);
// Clear the track when there is no next entry, the track end time is reached, and there is no mixingFrom.
if (current.trackLast >= current.trackEnd && current.mixingFrom == null) {
tracks[i] = null;
@ -107,6 +105,7 @@ public class AnimationState {
continue;
}
}
updateMixingFrom(current, delta);
current.trackTime += currentDelta;
}
@ -114,27 +113,22 @@ public class AnimationState {
queue.drain();
}
private function updateMixingFrom (entry:TrackEntry, delta:Number, canEnd:Boolean):void {
private function updateMixingFrom (entry:TrackEntry, delta:Number):void {
var from:TrackEntry = entry.mixingFrom;
if (from == null) return;
if (canEnd && entry.mixTime >= entry.mixDuration && entry.mixTime > 0) {
updateMixingFrom(from, delta);
if (entry.mixTime >= entry.mixDuration && from.mixingFrom == null && entry.mixTime > 0) {
entry.mixingFrom = null;
queue.end(from);
var newFrom:TrackEntry = from.mixingFrom;
entry.mixingFrom = newFrom;
if (newFrom == null) return;
entry.mixTime = from.mixTime;
entry.mixDuration = from.mixDuration;
from = newFrom;
return;
}
from.animationLast = from.nextAnimationLast;
from.trackLast = from.nextTrackLast;
var mixingFromDelta:Number = delta * from.timeScale;
from.trackTime += mixingFromDelta;
entry.mixTime += mixingFromDelta;
updateMixingFrom(from, delta, canEnd && from.alpha == 1);
from.trackTime += delta * from.timeScale;
entry.mixTime += delta * entry.timeScale;
}
public function apply (skeleton:Skeleton):void {
@ -149,7 +143,10 @@ public class AnimationState {
// Apply mixing from entries first.
var mix:Number = current.alpha;
if (current.mixingFrom != null) mix *= applyMixingFrom(current, skeleton);
if (current.mixingFrom != null)
mix *= applyMixingFrom(current, skeleton);
else if (current.trackTime >= current.trackEnd)
mix = 0;
// Apply current entry.
var animationLast:Number = current.animationLast, animationTime:Number = current.getAnimationTime();
@ -388,11 +385,11 @@ public class AnimationState {
if (current != null) {
if (current.nextTrackLast == -1) {
// Don't mix from an entry that was never applied.
tracks[trackIndex] = null;
tracks[trackIndex] = current.mixingFrom;
queue.interrupt(current);
queue.end(current);
disposeNext(current);
current = null;
current = current.mixingFrom;
} else
disposeNext(current);
}

View File

@ -12,7 +12,7 @@ The Spine Runtimes are developed with the intent to be used with data exported f
## Spine version
spine-c works with data exported from Spine 3.4.02.
spine-c works with data exported from Spine 3.5.xx.
spine-c supports all Spine features.

View File

@ -138,6 +138,9 @@ void spAnimationState_clearListenerNotifications(spAnimationState* self);
float spTrackEntry_getAnimationTime (spTrackEntry* entry);
/** Use this to dispose static memory before your app exits to appease your memory leak detector*/
void spAnimationState_disposeStatics ();
#ifdef SPINE_SHORT_NAMES
typedef spEventType EventType;
#define ANIMATION_START SP_ANIMATION_START

View File

@ -611,7 +611,7 @@ void _spAttachmentTimeline_apply (const spTimeline* timeline, spSkeleton* skelet
if (mixingOut && setupPose) {
const char* attachmentName = slot->data->attachmentName;
spSlot_setAttachment(slot, attachmentName ? 0 : spSkeleton_getAttachmentForSlotIndex(skeleton, self->slotIndex, attachmentName));
spSlot_setAttachment(slot, attachmentName ? spSkeleton_getAttachmentForSlotIndex(skeleton, self->slotIndex, attachmentName) : 0);
return;
}

View File

@ -33,12 +33,16 @@
#include <limits.h>
static spAnimation* SP_EMPTY_ANIMATION = 0;
void spAnimationState_disposeStatics () {
if (SP_EMPTY_ANIMATION) spAnimation_dispose(SP_EMPTY_ANIMATION);
SP_EMPTY_ANIMATION = 0;
}
/* Forward declaration of some "private" functions so we can keep
the same function order in C as we have method order in Java */
void _spAnimationState_disposeTrackEntry (spTrackEntry* entry);
void _spAnimationState_disposeTrackEntries (spAnimationState* state, spTrackEntry* entry);
void _spAnimationState_updateMixingFrom (spAnimationState* self, spTrackEntry* entry, float delta, int /*boolean*/ canEnd);
void _spAnimationState_updateMixingFrom (spAnimationState* self, spTrackEntry* entry, float delta);
float _spAnimationState_applyMixingFrom (spAnimationState* self, spTrackEntry* entry, spSkeleton* skeleton);
void _spAnimationState_applyRotateTimeline (spAnimationState* self, spTimeline* timeline, spSkeleton* skeleton, float time, float alpha, int /*boolean*/ setupPose, float* timelinesRotation, int i, int /*boolean*/ firstFrame);
void _spAnimationState_queueEvents (spAnimationState* self, spTrackEntry* entry, float animationTime);
@ -67,6 +71,7 @@ _spEventQueue* _spEventQueue_create (_spAnimationState* state) {
void _spEventQueue_free (_spEventQueue* self) {
FREE(self->objects);
FREE(self);
}
void _spEventQueue_ensureCapacity (_spEventQueue* self, int newElements) {
@ -74,7 +79,7 @@ void _spEventQueue_ensureCapacity (_spEventQueue* self, int newElements) {
_spEventQueueItem* newObjects;
self->objectsCapacity <<= 1;
newObjects = CALLOC(_spEventQueueItem, self->objectsCapacity);
memcpy(newObjects, self->objects, self->objectsCount);
memcpy(newObjects, self->objects, sizeof(_spEventQueueItem) * self->objectsCount);
FREE(self->objects);
self->objects = newObjects;
}
@ -152,8 +157,8 @@ void _spEventQueue_drain (_spEventQueue* self) {
if (self->state->super.listener) self->state->super.listener(SUPER(self->state), type, entry, 0);
/* Fall through. */
case SP_ANIMATION_DISPOSE:
if (entry->listener) entry->listener(SUPER(self->state), type, entry, 0);
if (self->state->super.listener) self->state->super.listener(SUPER(self->state), type, entry, 0);
if (entry->listener) entry->listener(SUPER(self->state), SP_ANIMATION_DISPOSE, entry, 0);
if (self->state->super.listener) self->state->super.listener(SUPER(self->state), SP_ANIMATION_DISPOSE, entry, 0);
_spAnimationState_disposeTrackEntry(entry);
break;
case SP_ANIMATION_EVENT:
@ -170,6 +175,9 @@ void _spEventQueue_drain (_spEventQueue* self) {
}
void _spAnimationState_disposeTrackEntry (spTrackEntry* entry) {
if (entry->mixingFrom) _spAnimationState_disposeTrackEntry(entry->mixingFrom);
FREE(entry->timelinesFirst);
FREE(entry->timelinesRotation);
FREE(entry);
}
@ -214,6 +222,7 @@ void spAnimationState_dispose (spAnimationState* self) {
_spEventQueue_free(internal->queue);
FREE(internal->events);
FREE(internal->propertyIDs);
FREE(internal);
}
void spAnimationState_update (spAnimationState* self, float delta) {
@ -253,9 +262,7 @@ void spAnimationState_update (spAnimationState* self, float delta) {
}
continue;
}
_spAnimationState_updateMixingFrom(self, current, delta, 1);
} else {
_spAnimationState_updateMixingFrom(self, current, delta, 1);
/* Clear the track when there is no next entry, the track end time is reached, and there is no mixingFrom. */
if (current->trackLast >= current->trackEnd && current->mixingFrom == 0) {
self->tracks[i] = 0;
@ -264,6 +271,7 @@ void spAnimationState_update (spAnimationState* self, float delta) {
continue;
}
}
_spAnimationState_updateMixingFrom(self, current, delta);
current->trackTime += currentDelta;
}
@ -271,30 +279,23 @@ void spAnimationState_update (spAnimationState* self, float delta) {
_spEventQueue_drain(internal->queue);
}
void _spAnimationState_updateMixingFrom (spAnimationState* self, spTrackEntry* entry, float delta, int /*boolean*/ canEnd) {
void _spAnimationState_updateMixingFrom (spAnimationState* self, spTrackEntry* entry, float delta) {
spTrackEntry* from = entry->mixingFrom;
spTrackEntry* newFrom;
float mixingFromDelta;
_spAnimationState* internal = SUB_CAST(_spAnimationState, self);
if (!from) return;
if (canEnd && entry->mixTime >= entry->mixDuration && entry->mixTime > 0) {
_spAnimationState_updateMixingFrom(self, from, delta);
if (entry->mixTime >= entry->mixDuration && from->mixingFrom == 0 && entry->mixTime > 0) {
entry->mixingFrom = 0;
_spEventQueue_end(internal->queue, from);
newFrom = from->mixingFrom;
entry->mixingFrom = newFrom;
if (!newFrom) return;
entry->mixTime = from->mixTime;
entry->mixDuration = from->mixDuration;
from = newFrom;
return;
}
from->animationLast = from->nextAnimationLast;
from->trackLast = from->nextTrackLast;
mixingFromDelta = delta * from->timeScale;
from->trackTime += mixingFromDelta;
entry->mixTime += mixingFromDelta;
_spAnimationState_updateMixingFrom(self, from, delta, canEnd && from->alpha == 1);
from->trackTime += delta * from->timeScale;
entry->mixTime += delta * entry->timeScale;
}
void spAnimationState_apply (spAnimationState* self, spSkeleton* skeleton) {
@ -318,7 +319,10 @@ void spAnimationState_apply (spAnimationState* self, spSkeleton* skeleton) {
/* Apply mixing from entries first. */
mix = current->alpha;
if (current->mixingFrom) mix *= _spAnimationState_applyMixingFrom(self, current, skeleton);
if (current->mixingFrom)
mix *= _spAnimationState_applyMixingFrom(self, current, skeleton);
else if (current->trackTime >= current->trackEnd)
mix = 0;
/* Apply current entry. */
animationLast = current->animationLast; animationTime = spTrackEntry_getAnimationTime(current);
@ -593,11 +597,11 @@ spTrackEntry* spAnimationState_setAnimation (spAnimationState* self, int trackIn
if (current) {
if (current->nextTrackLast == -1) {
/* Don't mix from an entry that was never applied. */
self->tracks[trackIndex] = 0;
self->tracks[trackIndex] = current->mixingFrom;
_spEventQueue_interrupt(internal->queue, current);
_spEventQueue_end(internal->queue, current);
_spAnimationState_disposeNext(self, current);
current = 0;
current = current->mixingFrom;
} else
_spAnimationState_disposeNext(self, current);
}
@ -771,7 +775,7 @@ void _spAnimationState_ensureCapacityPropertyIDs(spAnimationState* self, int cap
_spAnimationState* internal = SUB_CAST(_spAnimationState, self);
if (internal->propertyIDsCapacity < capacity) {
int *newPropertyIDs = CALLOC(int, capacity << 1);
memcpy(newPropertyIDs, internal->propertyIDs, internal->propertyIDsCount);
memcpy(newPropertyIDs, internal->propertyIDs, sizeof(int) * internal->propertyIDsCount);
FREE(internal->propertyIDs);
internal->propertyIDs = newPropertyIDs;
internal->propertyIDsCapacity = capacity << 1;
@ -788,6 +792,7 @@ int _spAnimationState_addPropertyID(spAnimationState* self, int id) {
_spAnimationState_ensureCapacityPropertyIDs(self, internal->propertyIDsCount + 1);
internal->propertyIDs[internal->propertyIDsCount] = id;
internal->propertyIDsCount++;
return 1;
}

View File

@ -112,7 +112,7 @@ void spSkeletonBounds_update (spSkeletonBounds* self, spSkeleton* skeleton, int/
self->boundingBoxes = MALLOC(spBoundingBoxAttachment*, skeleton->slotsCount);
newPolygons = CALLOC(spPolygon*, skeleton->slotsCount);
memcpy(newPolygons, self->polygons, internal->capacity);
memcpy(newPolygons, self->polygons, sizeof(spPolygon*) * internal->capacity);
FREE(self->polygons);
self->polygons = newPolygons;

View File

@ -10,7 +10,7 @@ The Spine Runtimes are developed with the intent to be used with data exported f
## Spine version
spine-cocos2d-objc works with data exported from Spine 3.4.02.
spine-cocos2d-objc works with data exported from Spine 3.5.xx.
spine-cocos2d-objc supports all Spine features.

View File

@ -10,7 +10,7 @@ The Spine Runtimes are developed with the intent to be used with data exported f
## Spine version
spine-cocos2dx works with data exported from Spine 3.4.02.
spine-cocos2dx works with data exported from Spine 3.5.xx.
spine-cocos2dx supports all Spine features.

View File

@ -64,10 +64,10 @@ bool SpineboyExample::init () {
log("%d event: %s, %d, %f, %s", entry->trackIndex, event->data->name, event->intValue, event->floatValue, event->stringValue);
});
skeletonNode->setMix("walk", "jump", 0.2f);
skeletonNode->setMix("jump", "run", 0.2f);
skeletonNode->setMix("walk", "jump", 0.4);
skeletonNode->setMix("jump", "run", 0.4);
skeletonNode->setAnimation(0, "walk", true);
spTrackEntry* jumpEntry = skeletonNode->addAnimation(0, "jump", false, 3);
spTrackEntry* jumpEntry = skeletonNode->addAnimation(0, "jump", false, 1);
skeletonNode->addAnimation(0, "run", true);
skeletonNode->setTrackStartListener(jumpEntry, [] (spTrackEntry* entry) {

View File

@ -10,7 +10,7 @@ The Spine Runtimes are developed with the intent to be used with data exported f
## Spine version
spine-corona works with data exported from Spine 3.4.02.
spine-corona works with data exported from Spine 3.5.xx.
spine-corona supports all Spine features.

View File

@ -61,7 +61,15 @@ function loadSkeleton(atlasFile, jsonFile, x, y, scale, animation, skin)
print(entry.trackIndex.." event: "..entry.animation.name..", "..event.data.name..", "..event.intValue..", "..event.floatValue..", '"..(event.stringValue or "").."'")
end
if atlasFile == "spineboy.atlas" then
animationStateData:setMix("walk", "jump", 0.4)
animationStateData:setMix("jump", "run", 0.4);
animationState:setAnimationByName(0, "walk", true)
local jumpEntry = animationState:addAnimationByName(0, "jump", false, 3)
animationState:addAnimationByName(0, "run", true, 0)
else
animationState:setAnimationByName(0, animation, true)
end
-- return the skeleton an animation state
return { skeleton = skeleton, state = animationState }

View File

@ -10,7 +10,7 @@ The Spine Runtimes are developed with the intent to be used with data exported f
## Spine version
spine-csharp works with data exported from Spine 3.5.x.
spine-csharp works with data exported from Spine 3.5.xx.
spine-csharp supports all Spine features.

View File

@ -581,7 +581,7 @@ namespace Spine {
}
float[] frames = this.frames;
if (time < frames[0]) {
if (time < frames[0]) { // Time is before first frame.
if (setupPose) {
attachmentName = slot.data.attachmentName;
slot.Attachment = attachmentName == null ? null : skeleton.GetAttachment(slotIndex, attachmentName);

View File

@ -102,9 +102,7 @@ namespace Spine {
}
continue;
}
UpdateMixingFrom(current, delta, true);
} else {
UpdateMixingFrom(current, delta, true);
// Clear the track when there is no next entry, the track end time is reached, and there is no mixingFrom.
if (current.trackLast >= current.trackEnd && current.mixingFrom == null) {
tracksItems[i] = null;
@ -113,6 +111,7 @@ namespace Spine {
continue;
}
}
UpdateMixingFrom(current, delta);
current.trackTime += currentDelta;
}
@ -120,27 +119,22 @@ namespace Spine {
queue.Drain();
}
private void UpdateMixingFrom (TrackEntry entry, float delta, bool canEnd) {
private void UpdateMixingFrom (TrackEntry entry, float delta) {
TrackEntry from = entry.mixingFrom;
if (from == null) return;
if (canEnd && entry.mixTime >= entry.mixDuration && entry.mixTime > 0) {
UpdateMixingFrom(from, delta);
if (entry.mixTime >= entry.mixDuration && from.mixingFrom == null && entry.mixTime > 0) {
entry.mixingFrom = null;
queue.End(from);
TrackEntry newFrom = from.mixingFrom;
entry.mixingFrom = newFrom;
if (newFrom == null) return;
entry.mixTime = from.mixTime;
entry.mixDuration = from.mixDuration;
from = newFrom;
return;
}
from.animationLast = from.nextAnimationLast;
from.trackLast = from.nextTrackLast;
float mixingFromDelta = delta * from.timeScale;
from.trackTime += mixingFromDelta;
entry.mixTime += mixingFromDelta;
UpdateMixingFrom(from, delta, canEnd && from.alpha == 1);
from.trackTime += delta * from.timeScale;
entry.mixTime += delta * entry.timeScale;
}
@ -160,7 +154,10 @@ namespace Spine {
// Apply mixing from entries first.
float mix = current.alpha;
if (current.mixingFrom != null) mix *= ApplyMixingFrom(current, skeleton);
if (current.mixingFrom != null)
mix *= ApplyMixingFrom(current, skeleton);
else if (current.trackTime >= current.trackEnd) //
mix = 0; // Set to setup pose the last time the entry will be applied.
// Apply current entry.
float animationLast = current.animationLast, animationTime = current.AnimationTime;
@ -228,7 +225,7 @@ namespace Spine {
if (rotateTimeline != null) {
ApplyRotateTimeline(rotateTimeline, skeleton, animationTime, alpha, setupPose, timelinesRotation, i << 1, firstFrame);
} else {
if (setupPose) {
if (!setupPose) {
if (!attachments && timeline is AttachmentTimeline) continue;
if (!drawOrder && timeline is DrawOrderTimeline) continue;
}
@ -236,7 +233,7 @@ namespace Spine {
}
}
QueueEvents(entry, animationTime);
QueueEvents(from, animationTime);
from.nextAnimationLast = animationTime;
from.nextTrackLast = from.trackTime;
@ -420,11 +417,11 @@ namespace Spine {
if (current != null) {
if (current.nextTrackLast == -1) {
// Don't mix from an entry that was never applied.
tracks.Items[trackIndex] = null;
tracks.Items[trackIndex] = current.mixingFrom;
queue.Interrupt(current);
queue.End(current);
DisposeNext(current);
current = null;
current = current.mixingFrom;
} else {
DisposeNext(current);
}
@ -686,11 +683,11 @@ namespace Spine {
/// <summary>
/// The track time in seconds when this animation will be removed from the track. Defaults to the animation duration for
/// non-looping animations and to <see cref="int.MaxValue"/> for looping animations. If the track end time is reached and no
/// other animations are queued for playback, and mixing from any previous animations is complete, then the track is cleared,
/// leaving skeletons in their previous pose.
/// other animations are queued for playback, and mixing from any previous animations is complete, properties keyed by the animation,
/// are set to the setup pose and the track is cleared.
///
/// It may be desired to use <see cref="AnimationState.AddEmptyAnimation(int, float, float)"/> to mix the skeletons back to the
/// setup pose, rather than leaving them in their previous pose.
/// It may be desired to use <see cref="AnimationState.AddEmptyAnimation(int, float, float)"/> to mix the properties back to the
/// setup pose over time, rather than have it happen instantly.
/// </summary>
public float TrackEnd { get { return trackEnd; } set { trackEnd = value; } }

View File

@ -82,7 +82,7 @@ namespace Spine {
}
if (updateAabb) {
aabbCompute();
AabbCompute();
} else {
minX = int.MinValue;
minY = int.MinValue;
@ -91,7 +91,7 @@ namespace Spine {
}
}
private void aabbCompute () {
private void AabbCompute () {
float minX = int.MaxValue, minY = int.MaxValue, maxX = int.MinValue, maxY = int.MinValue;
ExposedList<Polygon> polygons = Polygons;
for (int i = 0, n = polygons.Count; i < n; i++) {
@ -204,7 +204,7 @@ namespace Spine {
return false;
}
public Polygon getPolygon (BoundingBoxAttachment attachment) {
public Polygon GetPolygon (BoundingBoxAttachment attachment) {
int index = BoundingBoxes.IndexOf(attachment);
return index == -1 ? null : Polygons.Items[index];
}

View File

@ -10,7 +10,7 @@ The Spine Runtimes are developed with the intent to be used with data exported f
## Spine version
spine-libgdx works with data exported from Spine 3.4.02.
spine-libgdx works with data exported from Spine 3.5.xx.
spine-libgdx supports all Spine features and is the reference runtime implementation.

View File

@ -650,8 +650,8 @@ public class AnimationStateTests {
expect(0, "end", 0.8f, 0.9f), //
expect(0, "dispose", 0.8f, 0.9f), //
expect(-1, "end", 0.1f, 0.9f), //
expect(-1, "dispose", 0.1f, 0.9f) //
expect(-1, "end", 0.2f, 1), //
expect(-1, "dispose", 0.2f, 1) //
);
state.addAnimation(0, "events1", false, 0);
run(0.1f, 10, new TestListener() {

View File

@ -108,9 +108,7 @@ public class AnimationState {
}
continue;
}
updateMixingFrom(current, delta, true);
} else {
updateMixingFrom(current, delta, true);
// Clear the track when there is no next entry, the track end time is reached, and there is no mixingFrom.
if (current.trackLast >= current.trackEnd && current.mixingFrom == null) {
tracks.set(i, null);
@ -119,6 +117,7 @@ public class AnimationState {
continue;
}
}
updateMixingFrom(current, delta);
current.trackTime += currentDelta;
}
@ -126,27 +125,22 @@ public class AnimationState {
queue.drain();
}
private void updateMixingFrom (TrackEntry entry, float delta, boolean canEnd) {
private void updateMixingFrom (TrackEntry entry, float delta) {
TrackEntry from = entry.mixingFrom;
if (from == null) return;
if (canEnd && entry.mixTime >= entry.mixDuration && entry.mixTime > 0) {
updateMixingFrom(from, delta);
if (entry.mixTime >= entry.mixDuration && from.mixingFrom == null && entry.mixTime > 0) {
entry.mixingFrom = null;
queue.end(from);
TrackEntry newFrom = from.mixingFrom;
entry.mixingFrom = newFrom;
if (newFrom == null) return;
entry.mixTime = from.mixTime;
entry.mixDuration = from.mixDuration;
from = newFrom;
return;
}
from.animationLast = from.nextAnimationLast;
from.trackLast = from.nextTrackLast;
float mixingFromDelta = delta * from.timeScale;
from.trackTime += mixingFromDelta;
entry.mixTime += mixingFromDelta;
updateMixingFrom(from, delta, canEnd && from.alpha == 1);
from.trackTime += delta * from.timeScale;
entry.mixTime += delta * entry.timeScale;
}
/** Poses the skeleton using the track entry animations. There are no side effects other than invoking listeners, so the
@ -163,7 +157,10 @@ public class AnimationState {
// Apply mixing from entries first.
float mix = current.alpha;
if (current.mixingFrom != null) mix *= applyMixingFrom(current, skeleton);
if (current.mixingFrom != null)
mix *= applyMixingFrom(current, skeleton);
else if (current.trackTime >= current.trackEnd) //
mix = 0; // Set to setup pose the last time the entry will be applied.
// Apply current entry.
float animationLast = current.animationLast, animationTime = current.getAnimationTime();
@ -413,11 +410,11 @@ public class AnimationState {
if (current != null) {
if (current.nextTrackLast == -1) {
// Don't mix from an entry that was never applied.
tracks.set(trackIndex, null);
tracks.set(trackIndex, current.mixingFrom);
queue.interrupt(current);
queue.end(current);
disposeNext(current);
current = null;
current = current.mixingFrom;
} else
disposeNext(current);
}
@ -755,10 +752,10 @@ public class AnimationState {
/** The track time in seconds when this animation will be removed from the track. Defaults to the animation
* {@link Animation#duration} for non-looping animations and the highest float possible for looping animations. If the track
* end time is reached, no other animations are queued for playback, and mixing from any previous animations is complete,
* then the track is cleared, leaving skeletons in their previous pose.
* then the properties keyed by the animation are set to the setup pose and the track is cleared.
* <p>
* It may be desired to use {@link AnimationState#addEmptyAnimation(int, float, float)} to mix the skeletons back to the
* setup pose, rather than leaving them in their previous pose. */
* It may be desired to use {@link AnimationState#addEmptyAnimation(int, float, float)} to mix the properties back to the
* setup pose over time, rather than have it happen instantly. */
public float getTrackEnd () {
return trackEnd;
}

View File

@ -51,7 +51,7 @@ public class SkeletonData {
String version, hash;
// Nonessential.
float fps;
float fps = 30;
String imagesPath;
// --- Bones.

View File

@ -117,7 +117,7 @@ public class SkeletonJson {
skeletonData.version = skeletonMap.getString("spine", null);
skeletonData.width = skeletonMap.getFloat("width", 0);
skeletonData.height = skeletonMap.getFloat("height", 0);
skeletonData.fps = skeletonMap.getFloat("fps", 0);
skeletonData.fps = skeletonMap.getFloat("fps", 30);
skeletonData.imagesPath = skeletonMap.getString("images", null);
}

View File

@ -227,10 +227,8 @@ public class SkeletonViewer extends ApplicationAdapter {
state.setEmptyAnimation(track, 0);
entry = state.addAnimation(track, ui.animationList.getSelected(), ui.loopCheckbox.isChecked(), 0);
entry.setMixDuration(ui.mixSlider.getValue());
entry.setTrackEnd(Integer.MAX_VALUE);
} else {
entry = state.setAnimation(track, ui.animationList.getSelected(), ui.loopCheckbox.isChecked());
entry.setTrackEnd(Integer.MAX_VALUE);
}
entry.setAlpha(ui.alphaSlider.getValue());
}
@ -597,7 +595,10 @@ public class SkeletonViewer extends ApplicationAdapter {
int track = trackButtons.getCheckedIndex();
if (track > 0) {
TrackEntry current = state.getCurrent(track);
if (current != null) current.setAlpha(alphaSlider.getValue());
if (current != null) {
current.setAlpha(alphaSlider.getValue());
current.resetRotationDirections();
}
}
}
});
@ -702,6 +703,12 @@ public class SkeletonViewer extends ApplicationAdapter {
}
void render () {
if (state.getCurrent(ui.trackButtons.getCheckedIndex()) == null) {
ui.animationList.getSelection().setProgrammaticChangeEvents(false);
ui.animationList.setSelected(null);
ui.animationList.getSelection().setProgrammaticChangeEvents(true);
}
statusLabel.pack();
if (minimizeButton.isChecked())
statusLabel.setPosition(10, 25, Align.bottom | Align.left);

View File

@ -10,7 +10,7 @@ The Spine Runtimes are developed with the intent to be used with data exported f
## Spine version
spine-love works with data exported from Spine 3.4.02.
spine-love works with data exported from Spine 3.5.xx.
spine-love supports all Spine features except for blending modes other than normal.

View File

@ -581,7 +581,7 @@ function Animation.AttachmentTimeline.new (frameCount)
end
function self:getPropertyId ()
return Timeline.attachment * SHL_24 + self.slotIndex
return TimelineType.attachment * SHL_24 + self.slotIndex
end
function self:apply (skeleton, lastTime, time, firedEvents, alpha, setupPose, mixingOut)
@ -592,7 +592,7 @@ function Animation.AttachmentTimeline.new (frameCount)
if not attachmentName then
slot:setAttachment(nil)
else
skeleton:setAttachment(skeleton:getAttachmentByIndex(self.slotIndex, attachmentName))
slot:setAttachment(skeleton:getAttachmentByIndex(self.slotIndex, attachmentName))
end
return;
end
@ -604,7 +604,7 @@ function Animation.AttachmentTimeline.new (frameCount)
if not attachmentName then
slot:setAttachment(nil)
else
skeleton:setAttachment(skeleton:getAttachmentByIndex(self.slotIndex, attachmentName))
slot:setAttachment(skeleton:getAttachmentByIndex(self.slotIndex, attachmentName))
end
end
return
@ -619,9 +619,9 @@ function Animation.AttachmentTimeline.new (frameCount)
attachmentName = self.attachmentNames[frameIndex]
if not attachmentName then
skeleton.slots[self.slotIndex]:setAttachment(nil)
slot:setAttachment(nil)
else
skeleton.slots[self.slotIndex]:setAttachment(skeleton:getAttachmentByIndex(self.slotIndex, attachmentName))
slot:setAttachment(skeleton:getAttachmentByIndex(self.slotIndex, attachmentName))
end
end
@ -767,7 +767,7 @@ function Animation.EventTimeline.new (frameCount)
}
function self:getPropertyId ()
return Timeline.event * SHL_24
return TimelineType.event * SHL_24
end
function self:getFrameCount ()
@ -824,7 +824,7 @@ function Animation.DrawOrderTimeline.new (frameCount)
}
function self:getPropertyId ()
return Timeline.drawOrder * SHL_24
return TimelineType.drawOrder * SHL_24
end
function self:getFrameCount ()

View File

@ -232,26 +232,22 @@ function AnimationState:update (delta)
end
if not skip then
local next = current.next
if next then
local _next = current.next
if _next then
-- When the next entry's delay is passed, change to the next entry, preserving leftover time.
local nextTime = current.trackLast - next.delay
local nextTime = current.trackLast - _next.delay
if nextTime >= 0 then
next.delay = 0
next.trackTime = nextTime + delta * next.timeScale
_next.delay = 0
_next.trackTime = nextTime + delta * _next.timeScale
current.trackTime = current.trackTime + currentDelta
self:setCurrent(i, next)
while next.mixingFrom do
next.mixTime = next.mixTime + currentDelta
next = next.mixingFrom
self:setCurrent(i, _next)
while _next.mixingFrom do
_next.mixTime = _next.mixTime + currentDelta
_next = _next.mixingFrom
end
skip = true
end
if not skip then
self:updateMixingFrom(current, delta, true);
end
else
self:updateMixingFrom(current, delta, true)
-- Clear the track when there is no next entry, the track end time is reached, and there is no mixingFrom.
if current.trackLast >= current.trackEnd and current.mixingFrom == nil then
tracks[i] = nil
@ -261,7 +257,10 @@ function AnimationState:update (delta)
end
end
if not skip then current.trackTime = current.trackTime + currentDelta end
if not skip then
self:updateMixingFrom(current, delta)
current.trackTime = current.trackTime + currentDelta
end
end
end
end
@ -269,28 +268,23 @@ function AnimationState:update (delta)
queue:drain()
end
function AnimationState:updateMixingFrom (entry, delta, canEnd)
function AnimationState:updateMixingFrom (entry, delta)
local from = entry.mixingFrom
if from == nil then return end
self:updateMixingFrom(from, delta)
local queue = self.queue
if canEnd and entry.mixTime >= entry.mixDuration and entry.mixTime > 0 then
if entry.mixTime >= entry.mixDuration and from.mixingFrom == nil and entry.mixTime > 0 then
entry.mixingFrom = null
queue:_end(from)
local newFrom = from.mixingFrom
entry.mixingFrom = newFrom
if newFrom == nil then return end
entry.mixTime = from.mixTime;
entry.mixDuration = from.mixDuration;
from = newFrom;
return
end
from.animationLast = from.nextAnimationLast
from.trackLast = from.nextTrackLast
local mixingFromDelta = delta * from.timeScale
from.trackTime = from.trackTime + mixingFromDelta;
entry.mixTime = entry.mixTime + mixingFromDelta;
self:updateMixingFrom(from, delta, canEnd and from.alpha == 1)
from.trackTime = from.trackTime + delta * from.timeScale;
entry.mixTime = entry.mixTime + delta * entry.timeScale;
end
function AnimationState:apply (skeleton)
@ -305,7 +299,11 @@ function AnimationState:apply (skeleton)
if not (current == nil or current.delay > 0) then
-- Apply mixing from entries first.
local mix = current.alpha
if current.mixingFrom then mix = mix * self:applyMixingFrom(current, skeleton) end
if current.mixingFrom then
mix = mix * self:applyMixingFrom(current, skeleton)
elseif current.trackTime >= current.trackEnd then
mix = 0
end
-- Apply current entry.
local animationLast = current.animationLast
@ -563,11 +561,11 @@ function AnimationState:setAnimation (trackIndex, animation, loop)
if current then
if current.nextTrackLast == -1 then
-- Don't mix from an entry that was never applied.
tracks[trackIndex] = nil
tracks[trackIndex] = current.mixingFrom
queue:interrupt(current)
queue:_end(current)
self:disposeNext(current)
current = nil
current = current.mixingFrom
else
self:disposeNext(current)
end
@ -708,9 +706,9 @@ function AnimationState:_animationsChanged ()
end
-- Set timelinesFirst for all entries, from lowest track to highest.
local i = 1
local n = highest
while i <= n do
local i = 0
local n = highest + 1
while i < n do
local entry = tracks[i]
if entry then
self:setTimelinesFirst(entry);
@ -719,7 +717,7 @@ function AnimationState:_animationsChanged ()
end
i = i + 1
end
while i <= n do
while i < n do
local entry = tracks[i]
if entry then self:checkTimelinesFirst(entry) end
i = i + 1
@ -756,6 +754,7 @@ function AnimationState:checkTimelinesUsage (entry, usageArray)
local n = #entry.animation.timelines
local timelines = entry.animation.timelines
local usage = usageArray
local i = 1
while i <= n do
local id = "" .. timelines[i]:getPropertyId()
local contained = propertyIDs[id] == id

View File

@ -10,7 +10,7 @@ The Spine Runtimes are developed with the intent to be used with data exported f
## Spine version
spine-lua works with data exported from Spine 3.4.02.
spine-lua works with data exported from Spine 3.5.xx.
spine-lua supports all Spine features.

View File

@ -10,7 +10,7 @@ The Spine Runtimes are developed with the intent to be used with data exported f
## Spine version
spine-monogame works with data exported from Spine 3.5.x.
spine-monogame works with data exported from Spine 3.5.xx.
spine-monogame supports all Spine features.

View File

@ -10,7 +10,7 @@ The Spine Runtimes are developed with the intent to be used with data exported f
## Spine version
spine-sfml works with data exported from Spine 3.4.02.
spine-sfml works with data exported from Spine 3.5.xx.
spine-sfml supports all Spine features.

View File

@ -10,7 +10,7 @@ The Spine Runtimes are developed with the intent to be used with data exported f
## Spine version
spine-starling works with data exported from Spine 3.4.02.
spine-starling works with data exported from Spine 3.5.xx.
spine-starling supports all Spine features.

View File

@ -14,7 +14,7 @@ com.powerflasher.fdt.core.PassManifests=true
com.powerflasher.fdt.core.PassRsls=false
com.powerflasher.fdt.core.PassSwcs=true
com.powerflasher.fdt.core.PlatformType=WEB
com.powerflasher.fdt.core.PlayerVersion=22.0
com.powerflasher.fdt.core.PlayerVersion=23.0
com.powerflasher.fdt.core.ProjectTypeHint=Web
com.powerflasher.fdt.core.Runtime=Flash_Player
com.powerflasher.fdt.core.SdkName=Flex 4.6.0

View File

@ -64,9 +64,9 @@ public class SpineboyExample extends Sprite {
var skeletonData:SkeletonData = json.readSkeletonData(new SpineboyJson());
var stateData:AnimationStateData = new AnimationStateData(skeletonData);
stateData.setMixByName("run", "jump", 0.2);
stateData.setMixByName("run", "jump", 0.4);
stateData.setMixByName("jump", "run", 0.4);
stateData.setMixByName("jump", "jump", 0.2);
stateData.setMixByName("jump", "jump", 0.4);
skeleton = new SkeletonAnimation(skeletonData, stateData);
skeleton.x = 400;

View File

@ -18,7 +18,7 @@ The Spine Runtimes are developed with the intent to be used with data exported f
## Spine version
spine-ts works with data exported from Spine 3.4.02.
spine-ts works with data exported from Spine 3.5.xx.
spine-ts WebGL & Widget backends supports all Spine features. The spine-ts Canvas backend does not support color tinting, mesh attachments or shearing. Mesh attachments are supported by setting `spine.canvas.SkeletonRenderer.useTriangleRendering` to true. Note that this method is slow and may lead to artifacts on some browsers. The spine-ts THREE.JS backend does not support color tinting and blend modes. The THREE.JS backend provides `SkeletonMesh.zOffset` to avoid z-fighting. Adjust to your near/far plane settings.

View File

@ -302,7 +302,7 @@ declare module spine {
trackEntryPool: Pool<TrackEntry>;
constructor(data: AnimationStateData);
update(delta: number): void;
updateMixingFrom(entry: TrackEntry, delta: number, canEnd: boolean): void;
updateMixingFrom(entry: TrackEntry, delta: number): void;
apply(skeleton: Skeleton): void;
applyMixingFrom(entry: TrackEntry, skeleton: Skeleton): number;
applyRotateTimeline(timeline: Timeline, skeleton: Skeleton, time: number, alpha: number, setupPose: boolean, timelinesRotation: Array<number>, i: number, firstFrame: boolean): void;

View File

@ -1330,10 +1330,8 @@ var spine;
}
continue;
}
this.updateMixingFrom(current, delta, true);
}
else {
this.updateMixingFrom(current, delta, true);
if (current.trackLast >= current.trackEnd && current.mixingFrom == null) {
tracks[i] = null;
this.queue.end(current);
@ -1341,30 +1339,25 @@ var spine;
continue;
}
}
this.updateMixingFrom(current, delta);
current.trackTime += currentDelta;
}
this.queue.drain();
};
AnimationState.prototype.updateMixingFrom = function (entry, delta, canEnd) {
AnimationState.prototype.updateMixingFrom = function (entry, delta) {
var from = entry.mixingFrom;
if (from == null)
return;
if (canEnd && entry.mixTime >= entry.mixDuration && entry.mixTime > 0) {
this.updateMixingFrom(from, delta);
if (entry.mixTime >= entry.mixDuration && from.mixingFrom != null && entry.mixTime > 0) {
entry.mixingFrom = null;
this.queue.end(from);
var newFrom = from.mixingFrom;
entry.mixingFrom = newFrom;
if (newFrom == null)
return;
entry.mixTime = from.mixTime;
entry.mixDuration = from.mixDuration;
from = newFrom;
}
from.animationLast = from.nextAnimationLast;
from.trackLast = from.nextTrackLast;
var mixingFromDelta = delta * from.timeScale;
from.trackTime += mixingFromDelta;
entry.mixTime += mixingFromDelta;
this.updateMixingFrom(from, delta, canEnd && from.alpha == 1);
from.trackTime += delta * from.timeScale;
entry.mixTime += delta * from.timeScale;
};
AnimationState.prototype.apply = function (skeleton) {
if (skeleton == null)
@ -1380,6 +1373,8 @@ var spine;
var mix = current.alpha;
if (current.mixingFrom != null)
mix *= this.applyMixingFrom(current, skeleton);
else if (current.trackTime >= current.trackEnd)
mix = 0;
var animationLast = current.animationLast, animationTime = current.getAnimationTime();
var timelineCount = current.animation.timelines.length;
var timelines = current.animation.timelines;
@ -1591,11 +1586,11 @@ var spine;
var current = this.expandToIndex(trackIndex);
if (current != null) {
if (current.nextTrackLast == -1) {
this.tracks[trackIndex] = null;
this.tracks[trackIndex] = current.mixingFrom;
this.queue.interrupt(current);
this.queue.end(current);
this.disposeNext(current);
current = null;
current = current.mixingFrom;
}
else
this.disposeNext(current);

File diff suppressed because one or more lines are too long

View File

@ -302,7 +302,7 @@ declare module spine {
trackEntryPool: Pool<TrackEntry>;
constructor(data: AnimationStateData);
update(delta: number): void;
updateMixingFrom(entry: TrackEntry, delta: number, canEnd: boolean): void;
updateMixingFrom(entry: TrackEntry, delta: number): void;
apply(skeleton: Skeleton): void;
applyMixingFrom(entry: TrackEntry, skeleton: Skeleton): number;
applyRotateTimeline(timeline: Timeline, skeleton: Skeleton, time: number, alpha: number, setupPose: boolean, timelinesRotation: Array<number>, i: number, firstFrame: boolean): void;

View File

@ -1330,10 +1330,8 @@ var spine;
}
continue;
}
this.updateMixingFrom(current, delta, true);
}
else {
this.updateMixingFrom(current, delta, true);
if (current.trackLast >= current.trackEnd && current.mixingFrom == null) {
tracks[i] = null;
this.queue.end(current);
@ -1341,30 +1339,25 @@ var spine;
continue;
}
}
this.updateMixingFrom(current, delta);
current.trackTime += currentDelta;
}
this.queue.drain();
};
AnimationState.prototype.updateMixingFrom = function (entry, delta, canEnd) {
AnimationState.prototype.updateMixingFrom = function (entry, delta) {
var from = entry.mixingFrom;
if (from == null)
return;
if (canEnd && entry.mixTime >= entry.mixDuration && entry.mixTime > 0) {
this.updateMixingFrom(from, delta);
if (entry.mixTime >= entry.mixDuration && from.mixingFrom != null && entry.mixTime > 0) {
entry.mixingFrom = null;
this.queue.end(from);
var newFrom = from.mixingFrom;
entry.mixingFrom = newFrom;
if (newFrom == null)
return;
entry.mixTime = from.mixTime;
entry.mixDuration = from.mixDuration;
from = newFrom;
}
from.animationLast = from.nextAnimationLast;
from.trackLast = from.nextTrackLast;
var mixingFromDelta = delta * from.timeScale;
from.trackTime += mixingFromDelta;
entry.mixTime += mixingFromDelta;
this.updateMixingFrom(from, delta, canEnd && from.alpha == 1);
from.trackTime += delta * from.timeScale;
entry.mixTime += delta * from.timeScale;
};
AnimationState.prototype.apply = function (skeleton) {
if (skeleton == null)
@ -1380,6 +1373,8 @@ var spine;
var mix = current.alpha;
if (current.mixingFrom != null)
mix *= this.applyMixingFrom(current, skeleton);
else if (current.trackTime >= current.trackEnd)
mix = 0;
var animationLast = current.animationLast, animationTime = current.getAnimationTime();
var timelineCount = current.animation.timelines.length;
var timelines = current.animation.timelines;
@ -1591,11 +1586,11 @@ var spine;
var current = this.expandToIndex(trackIndex);
if (current != null) {
if (current.nextTrackLast == -1) {
this.tracks[trackIndex] = null;
this.tracks[trackIndex] = current.mixingFrom;
this.queue.interrupt(current);
this.queue.end(current);
this.disposeNext(current);
current = null;
current = current.mixingFrom;
}
else
this.disposeNext(current);

File diff suppressed because one or more lines are too long

View File

@ -214,7 +214,7 @@ declare module spine {
trackEntryPool: Pool<TrackEntry>;
constructor(data: AnimationStateData);
update(delta: number): void;
updateMixingFrom(entry: TrackEntry, delta: number, canEnd: boolean): void;
updateMixingFrom(entry: TrackEntry, delta: number): void;
apply(skeleton: Skeleton): void;
applyMixingFrom(entry: TrackEntry, skeleton: Skeleton): number;
applyRotateTimeline(timeline: Timeline, skeleton: Skeleton, time: number, alpha: number, setupPose: boolean, timelinesRotation: Array<number>, i: number, firstFrame: boolean): void;

View File

@ -983,10 +983,8 @@ var spine;
}
continue;
}
this.updateMixingFrom(current, delta, true);
}
else {
this.updateMixingFrom(current, delta, true);
if (current.trackLast >= current.trackEnd && current.mixingFrom == null) {
tracks[i] = null;
this.queue.end(current);
@ -994,30 +992,25 @@ var spine;
continue;
}
}
this.updateMixingFrom(current, delta);
current.trackTime += currentDelta;
}
this.queue.drain();
};
AnimationState.prototype.updateMixingFrom = function (entry, delta, canEnd) {
AnimationState.prototype.updateMixingFrom = function (entry, delta) {
var from = entry.mixingFrom;
if (from == null)
return;
if (canEnd && entry.mixTime >= entry.mixDuration && entry.mixTime > 0) {
this.updateMixingFrom(from, delta);
if (entry.mixTime >= entry.mixDuration && from.mixingFrom != null && entry.mixTime > 0) {
entry.mixingFrom = null;
this.queue.end(from);
var newFrom = from.mixingFrom;
entry.mixingFrom = newFrom;
if (newFrom == null)
return;
entry.mixTime = from.mixTime;
entry.mixDuration = from.mixDuration;
from = newFrom;
}
from.animationLast = from.nextAnimationLast;
from.trackLast = from.nextTrackLast;
var mixingFromDelta = delta * from.timeScale;
from.trackTime += mixingFromDelta;
entry.mixTime += mixingFromDelta;
this.updateMixingFrom(from, delta, canEnd && from.alpha == 1);
from.trackTime += delta * from.timeScale;
entry.mixTime += delta * from.timeScale;
};
AnimationState.prototype.apply = function (skeleton) {
if (skeleton == null)
@ -1033,6 +1026,8 @@ var spine;
var mix = current.alpha;
if (current.mixingFrom != null)
mix *= this.applyMixingFrom(current, skeleton);
else if (current.trackTime >= current.trackEnd)
mix = 0;
var animationLast = current.animationLast, animationTime = current.getAnimationTime();
var timelineCount = current.animation.timelines.length;
var timelines = current.animation.timelines;
@ -1244,11 +1239,11 @@ var spine;
var current = this.expandToIndex(trackIndex);
if (current != null) {
if (current.nextTrackLast == -1) {
this.tracks[trackIndex] = null;
this.tracks[trackIndex] = current.mixingFrom;
this.queue.interrupt(current);
this.queue.end(current);
this.disposeNext(current);
current = null;
current = current.mixingFrom;
}
else
this.disposeNext(current);

File diff suppressed because one or more lines are too long

View File

@ -214,7 +214,7 @@ declare module spine {
trackEntryPool: Pool<TrackEntry>;
constructor(data: AnimationStateData);
update(delta: number): void;
updateMixingFrom(entry: TrackEntry, delta: number, canEnd: boolean): void;
updateMixingFrom(entry: TrackEntry, delta: number): void;
apply(skeleton: Skeleton): void;
applyMixingFrom(entry: TrackEntry, skeleton: Skeleton): number;
applyRotateTimeline(timeline: Timeline, skeleton: Skeleton, time: number, alpha: number, setupPose: boolean, timelinesRotation: Array<number>, i: number, firstFrame: boolean): void;

View File

@ -983,10 +983,8 @@ var spine;
}
continue;
}
this.updateMixingFrom(current, delta, true);
}
else {
this.updateMixingFrom(current, delta, true);
if (current.trackLast >= current.trackEnd && current.mixingFrom == null) {
tracks[i] = null;
this.queue.end(current);
@ -994,30 +992,25 @@ var spine;
continue;
}
}
this.updateMixingFrom(current, delta);
current.trackTime += currentDelta;
}
this.queue.drain();
};
AnimationState.prototype.updateMixingFrom = function (entry, delta, canEnd) {
AnimationState.prototype.updateMixingFrom = function (entry, delta) {
var from = entry.mixingFrom;
if (from == null)
return;
if (canEnd && entry.mixTime >= entry.mixDuration && entry.mixTime > 0) {
this.updateMixingFrom(from, delta);
if (entry.mixTime >= entry.mixDuration && from.mixingFrom != null && entry.mixTime > 0) {
entry.mixingFrom = null;
this.queue.end(from);
var newFrom = from.mixingFrom;
entry.mixingFrom = newFrom;
if (newFrom == null)
return;
entry.mixTime = from.mixTime;
entry.mixDuration = from.mixDuration;
from = newFrom;
}
from.animationLast = from.nextAnimationLast;
from.trackLast = from.nextTrackLast;
var mixingFromDelta = delta * from.timeScale;
from.trackTime += mixingFromDelta;
entry.mixTime += mixingFromDelta;
this.updateMixingFrom(from, delta, canEnd && from.alpha == 1);
from.trackTime += delta * from.timeScale;
entry.mixTime += delta * from.timeScale;
};
AnimationState.prototype.apply = function (skeleton) {
if (skeleton == null)
@ -1033,6 +1026,8 @@ var spine;
var mix = current.alpha;
if (current.mixingFrom != null)
mix *= this.applyMixingFrom(current, skeleton);
else if (current.trackTime >= current.trackEnd)
mix = 0;
var animationLast = current.animationLast, animationTime = current.getAnimationTime();
var timelineCount = current.animation.timelines.length;
var timelines = current.animation.timelines;
@ -1244,11 +1239,11 @@ var spine;
var current = this.expandToIndex(trackIndex);
if (current != null) {
if (current.nextTrackLast == -1) {
this.tracks[trackIndex] = null;
this.tracks[trackIndex] = current.mixingFrom;
this.queue.interrupt(current);
this.queue.end(current);
this.disposeNext(current);
current = null;
current = current.mixingFrom;
}
else
this.disposeNext(current);

File diff suppressed because one or more lines are too long

View File

@ -214,7 +214,7 @@ declare module spine {
trackEntryPool: Pool<TrackEntry>;
constructor(data: AnimationStateData);
update(delta: number): void;
updateMixingFrom(entry: TrackEntry, delta: number, canEnd: boolean): void;
updateMixingFrom(entry: TrackEntry, delta: number): void;
apply(skeleton: Skeleton): void;
applyMixingFrom(entry: TrackEntry, skeleton: Skeleton): number;
applyRotateTimeline(timeline: Timeline, skeleton: Skeleton, time: number, alpha: number, setupPose: boolean, timelinesRotation: Array<number>, i: number, firstFrame: boolean): void;

View File

@ -983,10 +983,8 @@ var spine;
}
continue;
}
this.updateMixingFrom(current, delta, true);
}
else {
this.updateMixingFrom(current, delta, true);
if (current.trackLast >= current.trackEnd && current.mixingFrom == null) {
tracks[i] = null;
this.queue.end(current);
@ -994,30 +992,25 @@ var spine;
continue;
}
}
this.updateMixingFrom(current, delta);
current.trackTime += currentDelta;
}
this.queue.drain();
};
AnimationState.prototype.updateMixingFrom = function (entry, delta, canEnd) {
AnimationState.prototype.updateMixingFrom = function (entry, delta) {
var from = entry.mixingFrom;
if (from == null)
return;
if (canEnd && entry.mixTime >= entry.mixDuration && entry.mixTime > 0) {
this.updateMixingFrom(from, delta);
if (entry.mixTime >= entry.mixDuration && from.mixingFrom != null && entry.mixTime > 0) {
entry.mixingFrom = null;
this.queue.end(from);
var newFrom = from.mixingFrom;
entry.mixingFrom = newFrom;
if (newFrom == null)
return;
entry.mixTime = from.mixTime;
entry.mixDuration = from.mixDuration;
from = newFrom;
}
from.animationLast = from.nextAnimationLast;
from.trackLast = from.nextTrackLast;
var mixingFromDelta = delta * from.timeScale;
from.trackTime += mixingFromDelta;
entry.mixTime += mixingFromDelta;
this.updateMixingFrom(from, delta, canEnd && from.alpha == 1);
from.trackTime += delta * from.timeScale;
entry.mixTime += delta * from.timeScale;
};
AnimationState.prototype.apply = function (skeleton) {
if (skeleton == null)
@ -1033,6 +1026,8 @@ var spine;
var mix = current.alpha;
if (current.mixingFrom != null)
mix *= this.applyMixingFrom(current, skeleton);
else if (current.trackTime >= current.trackEnd)
mix = 0;
var animationLast = current.animationLast, animationTime = current.getAnimationTime();
var timelineCount = current.animation.timelines.length;
var timelines = current.animation.timelines;
@ -1244,11 +1239,11 @@ var spine;
var current = this.expandToIndex(trackIndex);
if (current != null) {
if (current.nextTrackLast == -1) {
this.tracks[trackIndex] = null;
this.tracks[trackIndex] = current.mixingFrom;
this.queue.interrupt(current);
this.queue.end(current);
this.disposeNext(current);
current = null;
current = current.mixingFrom;
}
else
this.disposeNext(current);

File diff suppressed because one or more lines are too long

View File

@ -214,7 +214,7 @@ declare module spine {
trackEntryPool: Pool<TrackEntry>;
constructor(data: AnimationStateData);
update(delta: number): void;
updateMixingFrom(entry: TrackEntry, delta: number, canEnd: boolean): void;
updateMixingFrom(entry: TrackEntry, delta: number): void;
apply(skeleton: Skeleton): void;
applyMixingFrom(entry: TrackEntry, skeleton: Skeleton): number;
applyRotateTimeline(timeline: Timeline, skeleton: Skeleton, time: number, alpha: number, setupPose: boolean, timelinesRotation: Array<number>, i: number, firstFrame: boolean): void;

View File

@ -983,10 +983,8 @@ var spine;
}
continue;
}
this.updateMixingFrom(current, delta, true);
}
else {
this.updateMixingFrom(current, delta, true);
if (current.trackLast >= current.trackEnd && current.mixingFrom == null) {
tracks[i] = null;
this.queue.end(current);
@ -994,30 +992,25 @@ var spine;
continue;
}
}
this.updateMixingFrom(current, delta);
current.trackTime += currentDelta;
}
this.queue.drain();
};
AnimationState.prototype.updateMixingFrom = function (entry, delta, canEnd) {
AnimationState.prototype.updateMixingFrom = function (entry, delta) {
var from = entry.mixingFrom;
if (from == null)
return;
if (canEnd && entry.mixTime >= entry.mixDuration && entry.mixTime > 0) {
this.updateMixingFrom(from, delta);
if (entry.mixTime >= entry.mixDuration && from.mixingFrom != null && entry.mixTime > 0) {
entry.mixingFrom = null;
this.queue.end(from);
var newFrom = from.mixingFrom;
entry.mixingFrom = newFrom;
if (newFrom == null)
return;
entry.mixTime = from.mixTime;
entry.mixDuration = from.mixDuration;
from = newFrom;
}
from.animationLast = from.nextAnimationLast;
from.trackLast = from.nextTrackLast;
var mixingFromDelta = delta * from.timeScale;
from.trackTime += mixingFromDelta;
entry.mixTime += mixingFromDelta;
this.updateMixingFrom(from, delta, canEnd && from.alpha == 1);
from.trackTime += delta * from.timeScale;
entry.mixTime += delta * from.timeScale;
};
AnimationState.prototype.apply = function (skeleton) {
if (skeleton == null)
@ -1033,6 +1026,8 @@ var spine;
var mix = current.alpha;
if (current.mixingFrom != null)
mix *= this.applyMixingFrom(current, skeleton);
else if (current.trackTime >= current.trackEnd)
mix = 0;
var animationLast = current.animationLast, animationTime = current.getAnimationTime();
var timelineCount = current.animation.timelines.length;
var timelines = current.animation.timelines;
@ -1244,11 +1239,11 @@ var spine;
var current = this.expandToIndex(trackIndex);
if (current != null) {
if (current.nextTrackLast == -1) {
this.tracks[trackIndex] = null;
this.tracks[trackIndex] = current.mixingFrom;
this.queue.interrupt(current);
this.queue.end(current);
this.disposeNext(current);
current = null;
current = current.mixingFrom;
}
else
this.disposeNext(current);

File diff suppressed because one or more lines are too long

View File

@ -81,9 +81,7 @@ module spine {
}
continue;
}
this.updateMixingFrom(current, delta, true);
} else {
this.updateMixingFrom(current, delta, true);
// Clear the track when there is no next entry, the track end time is reached, and there is no mixingFrom.
if (current.trackLast >= current.trackEnd && current.mixingFrom == null) {
tracks[i] = null;
@ -92,6 +90,7 @@ module spine {
continue;
}
}
this.updateMixingFrom(current, delta);
current.trackTime += currentDelta;
}
@ -99,27 +98,22 @@ module spine {
this.queue.drain();
}
updateMixingFrom (entry: TrackEntry, delta: number, canEnd: boolean) {
updateMixingFrom (entry: TrackEntry, delta: number) {
let from = entry.mixingFrom;
if (from == null) return;
if (canEnd && entry.mixTime >= entry.mixDuration && entry.mixTime > 0) {
this.updateMixingFrom(from, delta);
if (entry.mixTime >= entry.mixDuration && from.mixingFrom != null && entry.mixTime > 0) {
entry.mixingFrom = null;
this.queue.end(from);
let newFrom = from.mixingFrom;
entry.mixingFrom = newFrom;
if (newFrom == null) return;
entry.mixTime = from.mixTime;
entry.mixDuration = from.mixDuration;
from = newFrom;
return;
}
from.animationLast = from.nextAnimationLast;
from.trackLast = from.nextTrackLast;
let mixingFromDelta = delta * from.timeScale;
from.trackTime += mixingFromDelta;
entry.mixTime += mixingFromDelta;
this.updateMixingFrom(from, delta, canEnd && from.alpha == 1);
from.trackTime += delta * from.timeScale;
entry.mixTime += delta * from.timeScale;
}
apply (skeleton: Skeleton) {
@ -135,7 +129,10 @@ module spine {
// Apply mixing from entries first.
let mix = current.alpha;
if (current.mixingFrom != null) mix *= this.applyMixingFrom(current, skeleton);
if (current.mixingFrom != null)
mix *= this.applyMixingFrom(current, skeleton);
else if (current.trackTime >= current.trackEnd)
mix = 0;
// Apply current entry.
let animationLast = current.animationLast, animationTime = current.getAnimationTime();
@ -369,11 +366,11 @@ module spine {
if (current != null) {
if (current.nextTrackLast == -1) {
// Don't mix from an entry that was never applied.
this.tracks[trackIndex] = null;
this.tracks[trackIndex] = current.mixingFrom;
this.queue.interrupt(current);
this.queue.end(current);
this.disposeNext(current);
current = null;
current = current.mixingFrom;
} else
this.disposeNext(current);
}

View File

@ -116,8 +116,17 @@ function loadSkeleton (name, initialAnimation, premultipliedAlpha, skin) {
var bounds = calculateBounds(skeleton);
// Create an AnimationState, and set the initial animation in looping mode.
var animationState = new spine.AnimationState(new spine.AnimationStateData(skeleton.data));
animationStateData = new spine.AnimationStateData(skeleton.data);
var animationState = new spine.AnimationState(animationStateData);
if (name == "spineboy") {
animationStateData.setMix("walk", "jump", 0.4)
animationStateData.setMix("jump", "run", 0.4);
animationState.setAnimation(0, "walk", true);
var jumpEntry = animationState.addAnimation(0, "jump", false, 3);
animationState.addAnimation(0, "run", true, 0);
} else {
animationState.setAnimation(0, initialAnimation, true);
}
animationState.addListener({
start: function(track) {
console.log("Animation on track " + track.trackIndex + " started");

View File

@ -13,7 +13,7 @@ SceneSettings:
--- !u!104 &2
RenderSettings:
m_ObjectHideFlags: 0
serializedVersion: 6
serializedVersion: 7
m_Fog: 0
m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
m_FogMode: 3
@ -37,12 +37,12 @@ RenderSettings:
m_ReflectionIntensity: 1
m_CustomReflection: {fileID: 0}
m_Sun: {fileID: 0}
m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1}
--- !u!157 &3
LightmapSettings:
m_ObjectHideFlags: 0
serializedVersion: 6
serializedVersion: 7
m_GIWorkflowMode: 1
m_LightmapsMode: 1
m_GISettings:
serializedVersion: 2
m_BounceScale: 1
@ -53,17 +53,22 @@ LightmapSettings:
m_EnableBakedLightmaps: 0
m_EnableRealtimeLightmaps: 0
m_LightmapEditorSettings:
serializedVersion: 3
serializedVersion: 4
m_Resolution: 2
m_BakeResolution: 40
m_TextureWidth: 1024
m_TextureHeight: 1024
m_AO: 0
m_AOMaxDistance: 1
m_Padding: 2
m_CompAOExponent: 0
m_CompAOExponentDirect: 0
m_Padding: 2
m_LightmapParameters: {fileID: 0}
m_LightmapsBakeMode: 1
m_TextureCompression: 1
m_DirectLightInLightProbes: 1
m_FinalGather: 0
m_FinalGatherFiltering: 1
m_FinalGatherRayCount: 1024
m_ReflectionCompression: 2
m_LightingDataAsset: {fileID: 0}
@ -111,6 +116,7 @@ RectTransform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children:
- {fileID: 189134935}
m_Father: {fileID: 289700665}
@ -145,6 +151,7 @@ MonoBehaviour:
startingLoop: 1
timeScale: 1
freeze: 0
unscaledTime: 0
--- !u!222 &57002146
CanvasRenderer:
m_ObjectHideFlags: 0
@ -177,6 +184,7 @@ RectTransform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 57002144}
m_RootOrder: 0
@ -307,6 +315,7 @@ RectTransform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0, y: 0, z: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children:
- {fileID: 941001663}
- {fileID: 774800194}
@ -341,6 +350,7 @@ RectTransform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children:
- {fileID: 57002144}
- {fileID: 1384013133}
@ -348,7 +358,7 @@ RectTransform:
m_RootOrder: 0
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: -0.000061035156, y: 0}
m_AnchoredPosition: {x: 0.000004069, y: 0}
m_SizeDelta: {x: 0, y: 1872}
m_Pivot: {x: 0, y: 1}
--- !u!1 &611702901
@ -434,6 +444,7 @@ Transform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: -10}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 0
@ -463,6 +474,7 @@ RectTransform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 249902688}
m_RootOrder: 1
@ -541,6 +553,7 @@ RectTransform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children:
- {fileID: 1351078838}
m_Father: {fileID: 941001663}
@ -588,7 +601,7 @@ MonoBehaviour:
m_TargetGraphic: {fileID: 1918252544}
m_HandleRect: {fileID: 1918252543}
m_Direction: 0
m_Value: 1
m_Value: 0
m_Size: 1
m_NumberOfSteps: 0
m_OnValueChanged:
@ -656,6 +669,7 @@ RectTransform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children:
- {fileID: 2133858527}
- {fileID: 852403708}
@ -757,6 +771,7 @@ RectTransform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 1384013133}
m_RootOrder: 0
@ -828,6 +843,7 @@ RectTransform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children:
- {fileID: 1918252543}
m_Father: {fileID: 852403708}
@ -863,6 +879,7 @@ RectTransform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children:
- {fileID: 1066372096}
m_Father: {fileID: 289700665}
@ -897,6 +914,7 @@ MonoBehaviour:
startingLoop: 1
timeScale: 1
freeze: 0
unscaledTime: 0
--- !u!222 &1384013135
CanvasRenderer:
m_ObjectHideFlags: 0
@ -930,6 +948,7 @@ RectTransform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children:
- {fileID: 1582800778}
m_Father: {fileID: 941001663}
@ -977,8 +996,8 @@ MonoBehaviour:
m_TargetGraphic: {fileID: 2091633436}
m_HandleRect: {fileID: 2091633435}
m_Direction: 2
m_Value: 0
m_Size: 1
m_Value: 1
m_Size: 0.2719017
m_NumberOfSteps: 0
m_OnValueChanged:
m_PersistentCalls:
@ -1042,6 +1061,7 @@ RectTransform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children:
- {fileID: 2091633435}
m_Father: {fileID: 1428602577}
@ -1109,6 +1129,7 @@ Transform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 2
@ -1138,6 +1159,7 @@ RectTransform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 1351078838}
m_RootOrder: 0
@ -1205,6 +1227,7 @@ RectTransform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 1582800778}
m_RootOrder: 0
@ -1273,6 +1296,7 @@ RectTransform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children:
- {fileID: 289700665}
m_Father: {fileID: 941001663}

View File

@ -31,44 +31,34 @@
// Contributed by: Mitch Thompson
using UnityEngine;
using System.Collections;
using Spine.Unity;
[RequireComponent(typeof(CharacterController))]
public class BasicPlatformerController : MonoBehaviour {
namespace Spine.Unity.Examples {
[RequireComponent(typeof(CharacterController))]
public class BasicPlatformerController : MonoBehaviour {
#if UNITY_4_5
[Header("Controls")]
#endif
public string XAxis = "Horizontal";
public string YAxis = "Vertical";
public string JumpButton = "Jump";
#if UNITY_4_5
[Header("Moving")]
#endif
public float walkSpeed = 4;
public float runSpeed = 10;
public float gravity = 65;
#if UNITY_4_5
[Header("Jumping")]
#endif
public float jumpSpeed = 25;
public float jumpDuration = 0.5f;
public float jumpInterruptFactor = 100;
public float forceCrouchVelocity = 25;
public float forceCrouchDuration = 0.5f;
#if UNITY_4_5
[Header("Graphics")]
#endif
public Transform graphicsRoot;
public SkeletonAnimation skeletonAnimation;
#if UNITY_4_5
[Header("Animation")]
#endif
[SpineAnimation(dataField: "skeletonAnimation")]
public string walkName = "Walk";
[SpineAnimation(dataField: "skeletonAnimation")]
@ -82,9 +72,7 @@ public class BasicPlatformerController : MonoBehaviour {
[SpineAnimation(dataField: "skeletonAnimation")]
public string crouchName = "Crouch";
#if UNITY_4_5
[Header("Audio")]
#endif
public AudioSource jumpAudioSource;
public AudioSource hardfallAudioSource;
public AudioSource footstepAudioSource;
@ -204,15 +192,13 @@ public class BasicPlatformerController : MonoBehaviour {
else if (x < 0)
graphicsRoot.localRotation = flippedRotation;
//store previous state
lastVelocity = velocity;
lastGrounded = controller.isGrounded;
}
#region Utility
static float GetRandomPitch (float maxOffset) {
return 1f + Random.Range(-maxOffset, maxOffset);
}
#endregion
}
}

View File

@ -31,9 +31,9 @@
// Contributed by: Mitch Thompson
using UnityEngine;
using System.Collections;
public class ConstrainedCamera : MonoBehaviour {
namespace Spine.Unity.Examples {
public class ConstrainedCamera : MonoBehaviour {
public Transform target;
public Vector3 offset;
public Vector3 min;
@ -49,4 +49,5 @@ public class ConstrainedCamera : MonoBehaviour {
transform.position = Vector3.Lerp(transform.position, goalPoint, smoothing * Time.deltaTime);
}
}
}

View File

@ -32,7 +32,8 @@ using UnityEngine;
using System.Collections;
using Spine.Unity;
public class Raptor : MonoBehaviour {
namespace Spine.Unity.Examples {
public class Raptor : MonoBehaviour {
#region Inspector
[SpineAnimation]
@ -71,15 +72,14 @@ public class Raptor : MonoBehaviour {
// Repeatedly play the gungrab and gunkeep animation on track 1.
while (true) {
yield return new WaitForSeconds(Random.Range(0.5f, 3f));
skeletonAnimation.state.SetAnimation(1, gungrab, false);
yield return new WaitForSeconds(Random.Range(0.5f, 3f));
skeletonAnimation.state.SetAnimation(1, gunkeep, false);
}
}
}
}

View File

@ -32,7 +32,8 @@ using UnityEngine;
using System.Collections;
using Spine.Unity;
public class SpineBeginnerTwo : MonoBehaviour {
namespace Spine.Unity.Examples {
public class SpineBeginnerTwo : MonoBehaviour {
#region Inspector
// [SpineAnimation] attribute allows an Inspector dropdown of Spine animation names coming form SkeletonAnimation.
@ -89,4 +90,6 @@ public class SpineBeginnerTwo : MonoBehaviour {
}
}
}
}

View File

@ -32,7 +32,8 @@ using UnityEngine;
using System.Collections;
using Spine.Unity;
public class SpineBlinkPlayer : MonoBehaviour {
namespace Spine.Unity.Examples {
public class SpineBlinkPlayer : MonoBehaviour {
const int BlinkTrack = 1;
[SpineAnimation]
@ -48,4 +49,5 @@ public class SpineBlinkPlayer : MonoBehaviour {
}
}
}
}

View File

@ -31,8 +31,8 @@
using UnityEngine;
using System.Collections;
public class SpineboyBeginnerInput : MonoBehaviour {
namespace Spine.Unity.Examples {
public class SpineboyBeginnerInput : MonoBehaviour {
#region Inspector
public string horizontalAxis = "Horizontal";
public string attackButton = "Fire1";
@ -57,8 +57,7 @@ public class SpineboyBeginnerInput : MonoBehaviour {
if (Input.GetButtonDown(jumpButton))
model.TryJump();
}
}
}

View File

@ -31,8 +31,9 @@
using UnityEngine;
using System.Collections;
[SelectionBase]
public class SpineboyBeginnerModel : MonoBehaviour {
namespace Spine.Unity.Examples {
[SelectionBase]
public class SpineboyBeginnerModel : MonoBehaviour {
#region Inspector
[Header("Current State")]
@ -82,7 +83,7 @@ public class SpineboyBeginnerModel : MonoBehaviour {
state = SpineBeginnerBodyState.Jumping;
// Terribly-coded Fake jumping.
// Fake jumping.
{
var pos = transform.localPosition;
const float jumpTime = 1.2f;
@ -104,10 +105,11 @@ public class SpineboyBeginnerModel : MonoBehaviour {
state = SpineBeginnerBodyState.Idle;
}
}
}
public enum SpineBeginnerBodyState {
public enum SpineBeginnerBodyState {
Idle,
Running,
Jumping
}
}

View File

@ -32,13 +32,13 @@ using UnityEngine;
using System.Collections;
using Spine.Unity;
public class SpineboyBeginnerView : MonoBehaviour {
namespace Spine.Unity.Examples {
public class SpineboyBeginnerView : MonoBehaviour {
#region Inspector
[Header("Components")]
public SpineboyBeginnerModel model;
public SkeletonAnimation skeletonAnimation;
//public ParticleSystem gunParticles;
[SpineAnimation] public string run, idle, shoot, jump;
[SpineEvent] public string footstepEventName;
@ -141,4 +141,6 @@ public class SpineboyBeginnerView : MonoBehaviour {
return 1f + Random.Range(-maxPitchOffset, maxPitchOffset);
}
#endregion
}
}

View File

@ -13,7 +13,7 @@ SceneSettings:
--- !u!104 &2
RenderSettings:
m_ObjectHideFlags: 0
serializedVersion: 6
serializedVersion: 7
m_Fog: 0
m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
m_FogMode: 3
@ -37,12 +37,12 @@ RenderSettings:
m_ReflectionIntensity: 1
m_CustomReflection: {fileID: 0}
m_Sun: {fileID: 0}
m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1}
--- !u!157 &4
LightmapSettings:
m_ObjectHideFlags: 0
serializedVersion: 6
serializedVersion: 7
m_GIWorkflowMode: 1
m_LightmapsMode: 1
m_GISettings:
serializedVersion: 2
m_BounceScale: 1
@ -53,17 +53,22 @@ LightmapSettings:
m_EnableBakedLightmaps: 1
m_EnableRealtimeLightmaps: 0
m_LightmapEditorSettings:
serializedVersion: 3
serializedVersion: 4
m_Resolution: 1
m_BakeResolution: 50
m_TextureWidth: 1024
m_TextureHeight: 1024
m_AO: 0
m_AOMaxDistance: 1
m_Padding: 2
m_CompAOExponent: 0
m_CompAOExponentDirect: 0
m_Padding: 2
m_LightmapParameters: {fileID: 0}
m_LightmapsBakeMode: 1
m_TextureCompression: 0
m_DirectLightInLightProbes: 1
m_FinalGather: 0
m_FinalGatherFiltering: 1
m_FinalGatherRayCount: 1024
m_ReflectionCompression: 2
m_LightingDataAsset: {fileID: 0}
@ -168,6 +173,7 @@ Transform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 1, z: -10}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 0
@ -248,9 +254,9 @@ MonoBehaviour:
renderMeshes: 1
immutableTriangles: 0
pmaVertexColors: 1
clearStateOnDisable: 0
calculateNormals: 0
calculateTangents: 0
frontFacing: 0
logErrors: 0
disableRenderingOnOverride: 1
_animationName:
@ -265,17 +271,20 @@ MeshRenderer:
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 1
m_Materials:
- {fileID: 2100000, guid: 5a3598dafa118754db95756064347da7, type: 2}
m_SubsetIndices:
m_StaticBatchRoot: {fileID: 0}
m_UseLightProbes: 0
m_ReflectionProbeUsage: 1
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_SelectedWireframeHidden: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
@ -298,6 +307,7 @@ Transform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 1

View File

@ -13,7 +13,7 @@ SceneSettings:
--- !u!104 &2
RenderSettings:
m_ObjectHideFlags: 0
serializedVersion: 6
serializedVersion: 7
m_Fog: 0
m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
m_FogMode: 3
@ -37,12 +37,12 @@ RenderSettings:
m_ReflectionIntensity: 1
m_CustomReflection: {fileID: 0}
m_Sun: {fileID: 0}
m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1}
--- !u!157 &4
LightmapSettings:
m_ObjectHideFlags: 0
serializedVersion: 6
serializedVersion: 7
m_GIWorkflowMode: 1
m_LightmapsMode: 1
m_GISettings:
serializedVersion: 2
m_BounceScale: 1
@ -53,17 +53,22 @@ LightmapSettings:
m_EnableBakedLightmaps: 1
m_EnableRealtimeLightmaps: 0
m_LightmapEditorSettings:
serializedVersion: 3
serializedVersion: 4
m_Resolution: 1
m_BakeResolution: 50
m_TextureWidth: 1024
m_TextureHeight: 1024
m_AO: 0
m_AOMaxDistance: 1
m_Padding: 2
m_CompAOExponent: 0
m_CompAOExponentDirect: 0
m_Padding: 2
m_LightmapParameters: {fileID: 0}
m_LightmapsBakeMode: 1
m_TextureCompression: 0
m_DirectLightInLightProbes: 1
m_FinalGather: 0
m_FinalGatherFiltering: 1
m_FinalGatherRayCount: 1024
m_ReflectionCompression: 2
m_LightingDataAsset: {fileID: 0}
@ -108,7 +113,7 @@ Light:
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 133751936}
m_Enabled: 1
serializedVersion: 6
serializedVersion: 7
m_Type: 1
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_Intensity: 1.1
@ -116,8 +121,9 @@ Light:
m_SpotAngle: 30
m_CookieSize: 10
m_Shadows:
m_Type: 1
m_Type: 2
m_Resolution: -1
m_CustomResolution: -1
m_Strength: 1
m_Bias: 0.05
m_NormalBias: 0.4
@ -130,10 +136,10 @@ Light:
serializedVersion: 2
m_Bits: 4294967295
m_Lightmapping: 1
m_AreaSize: {x: 1, y: 1}
m_BounceIntensity: 1
m_ShadowRadius: 0
m_ShadowAngle: 0
m_AreaSize: {x: 1, y: 1}
--- !u!4 &133751938
Transform:
m_ObjectHideFlags: 0
@ -147,53 +153,6 @@ Transform:
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 0
--- !u!1001 &244083694
Prefab:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: 400000, guid: d51ed5943e10bcb4394b5eec480293f8, type: 2}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 400000, guid: d51ed5943e10bcb4394b5eec480293f8, type: 2}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 400000, guid: d51ed5943e10bcb4394b5eec480293f8, type: 2}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 400000, guid: d51ed5943e10bcb4394b5eec480293f8, type: 2}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 400000, guid: d51ed5943e10bcb4394b5eec480293f8, type: 2}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 400000, guid: d51ed5943e10bcb4394b5eec480293f8, type: 2}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 400000, guid: d51ed5943e10bcb4394b5eec480293f8, type: 2}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 400000, guid: d51ed5943e10bcb4394b5eec480293f8, type: 2}
propertyPath: m_RootOrder
value: 2
objectReference: {fileID: 0}
- target: {fileID: 3300000, guid: d51ed5943e10bcb4394b5eec480293f8, type: 2}
propertyPath: m_Mesh
value:
objectReference: {fileID: 0}
m_RemovedComponents: []
m_ParentPrefab: {fileID: 100100000, guid: d51ed5943e10bcb4394b5eec480293f8, type: 2}
m_RootGameObject: {fileID: 2143290130}
m_IsPrefabParent: 0
--- !u!1 &560289061
GameObject:
m_ObjectHideFlags: 0
@ -220,17 +179,20 @@ MeshRenderer:
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 1
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 1
m_Materials:
- {fileID: 10302, guid: 0000000000000000f000000000000000, type: 0}
m_SubsetIndices:
m_StaticBatchRoot: {fileID: 0}
m_UseLightProbes: 0
m_ReflectionProbeUsage: 1
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_SelectedWireframeHidden: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
@ -348,7 +310,7 @@ Transform:
GameObject:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 100000, guid: d51ed5943e10bcb4394b5eec480293f8, type: 2}
m_PrefabInternal: {fileID: 244083694}
m_PrefabInternal: {fileID: 0}
serializedVersion: 4
m_Component:
- 4: {fileID: 2143290134}
@ -367,7 +329,7 @@ MonoBehaviour:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 11400000, guid: d51ed5943e10bcb4394b5eec480293f8,
type: 2}
m_PrefabInternal: {fileID: 244083694}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 2143290130}
m_Enabled: 1
m_EditorHideFlags: 0
@ -381,6 +343,7 @@ MonoBehaviour:
renderMeshes: 1
immutableTriangles: 0
pmaVertexColors: 1
clearStateOnDisable: 0
calculateNormals: 1
calculateTangents: 0
logErrors: 0
@ -393,11 +356,14 @@ MeshRenderer:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 2300000, guid: d51ed5943e10bcb4394b5eec480293f8,
type: 2}
m_PrefabInternal: {fileID: 244083694}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 2143290130}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 1
m_Materials:
- {fileID: 2100000, guid: d58543c96f991934ca874395eb40222c, type: 2}
- {fileID: 2100000, guid: 3277fd5561d95724e83c6ca4a1dd28a4, type: 2}
@ -413,13 +379,13 @@ MeshRenderer:
- {fileID: 2100000, guid: 3277fd5561d95724e83c6ca4a1dd28a4, type: 2}
m_SubsetIndices:
m_StaticBatchRoot: {fileID: 0}
m_UseLightProbes: 0
m_ReflectionProbeUsage: 1
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_SelectedWireframeHidden: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
@ -431,14 +397,14 @@ MeshFilter:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 3300000, guid: d51ed5943e10bcb4394b5eec480293f8,
type: 2}
m_PrefabInternal: {fileID: 244083694}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 2143290130}
m_Mesh: {fileID: 0}
--- !u!4 &2143290134
Transform:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 400000, guid: d51ed5943e10bcb4394b5eec480293f8, type: 2}
m_PrefabInternal: {fileID: 244083694}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 2143290130}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}

File diff suppressed because it is too large Load Diff

View File

@ -1,4 +1,8 @@
fileFormatVersion: 2
guid: c5673b83016f67a4c99772dfb7b3c437
guid: 9b55bcfc2181c68418e59ee61ef5afc9
timeCreated: 1480087951
licenseType: Free
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -13,7 +13,7 @@ SceneSettings:
--- !u!104 &2
RenderSettings:
m_ObjectHideFlags: 0
serializedVersion: 6
serializedVersion: 7
m_Fog: 0
m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
m_FogMode: 3
@ -37,12 +37,12 @@ RenderSettings:
m_ReflectionIntensity: 1
m_CustomReflection: {fileID: 0}
m_Sun: {fileID: 0}
m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1}
--- !u!157 &3
LightmapSettings:
m_ObjectHideFlags: 0
serializedVersion: 6
serializedVersion: 7
m_GIWorkflowMode: 1
m_LightmapsMode: 1
m_GISettings:
serializedVersion: 2
m_BounceScale: 1
@ -53,17 +53,22 @@ LightmapSettings:
m_EnableBakedLightmaps: 0
m_EnableRealtimeLightmaps: 0
m_LightmapEditorSettings:
serializedVersion: 3
serializedVersion: 4
m_Resolution: 2
m_BakeResolution: 40
m_TextureWidth: 1024
m_TextureHeight: 1024
m_AO: 0
m_AOMaxDistance: 1
m_Padding: 2
m_CompAOExponent: 0
m_CompAOExponentDirect: 0
m_Padding: 2
m_LightmapParameters: {fileID: 0}
m_LightmapsBakeMode: 1
m_TextureCompression: 1
m_DirectLightInLightProbes: 1
m_FinalGather: 0
m_FinalGatherFiltering: 1
m_FinalGatherRayCount: 1024
m_ReflectionCompression: 2
m_LightingDataAsset: {fileID: 0}
@ -168,6 +173,7 @@ RectTransform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0.02, y: 0.02, z: 0.1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children:
- {fileID: 2142418131}
m_Father: {fileID: 0}
@ -232,9 +238,9 @@ MonoBehaviour:
renderMeshes: 1
immutableTriangles: 0
pmaVertexColors: 1
clearStateOnDisable: 0
calculateNormals: 0
calculateTangents: 0
frontFacing: 0
logErrors: 0
disableRenderingOnOverride: 1
_animationName: run
@ -249,18 +255,21 @@ MeshRenderer:
m_Enabled: 0
m_CastShadows: 1
m_ReceiveShadows: 0
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 1
m_Materials:
- {fileID: 0}
- {fileID: 2100000, guid: 4083cd422558e2540a62bbafb94f57b5, type: 2}
- {fileID: 2100000, guid: 1455e88fdb81ccc45bdeaedd657bad4d, type: 2}
m_SubsetIndices:
m_StaticBatchRoot: {fileID: 0}
m_UseLightProbes: 0
m_ReflectionProbeUsage: 1
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_SelectedWireframeHidden: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
@ -283,6 +292,7 @@ Transform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 6.75, y: -0.08, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children:
- {fileID: 1769987563}
- {fileID: 1619823304}
@ -327,17 +337,20 @@ MeshRenderer:
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_Materials:
- {fileID: 2100000, guid: 4083cd422558e2540a62bbafb94f57b5, type: 2}
- {fileID: 2100000, guid: 1455e88fdb81ccc45bdeaedd657bad4d, type: 2}
m_SubsetIndices:
m_StaticBatchRoot: {fileID: 0}
m_UseLightProbes: 1
m_ReflectionProbeUsage: 1
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_SelectedWireframeHidden: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
@ -360,6 +373,7 @@ Transform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 1918225119}
m_RootOrder: 0
@ -390,6 +404,7 @@ Transform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: -1.3629907, y: 3.7230203, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 93048079}
m_RootOrder: 2
@ -402,17 +417,20 @@ ParticleSystemRenderer:
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 0
m_Materials:
- {fileID: 10754, guid: 0000000000000000e000000000000000, type: 0}
- {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0}
m_SubsetIndices:
m_StaticBatchRoot: {fileID: 0}
m_UseLightProbes: 1
m_ReflectionProbeUsage: 0
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_SelectedWireframeHidden: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
@ -449,14 +467,15 @@ MonoBehaviour:
boneName: front_fist
followZPosition: 0
followBoneRotation: 0
resetOnAwake: 1
followSkeletonFlip: 0
initializeOnAwake: 1
--- !u!198 &565117365
ParticleSystem:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 565117361}
serializedVersion: 2
serializedVersion: 4
lengthInSec: 5
startDelay:
scalar: 0
@ -494,12 +513,13 @@ ParticleSystem:
m_RotationOrder: 4
minMaxState: 0
speed: 1
randomSeed: 0
looping: 1
prewarm: 0
playOnAwake: 1
moveWithTransform: 0
autoRandomSeed: 1
scalingMode: 1
randomSeed: 0
InitialModule:
serializedVersion: 2
enabled: 1
@ -574,6 +594,7 @@ ParticleSystem:
m_RotationOrder: 4
minMaxState: 0
startColor:
serializedVersion: 2
maxGradient:
key0:
serializedVersion: 2
@ -660,12 +681,8 @@ ParticleSystem:
atime7: 0
m_NumColorKeys: 2
m_NumAlphaKeys: 2
minColor:
serializedVersion: 2
rgba: 4294967295
maxColor:
serializedVersion: 2
rgba: 4278224127
minColor: {r: 1, g: 1, b: 1, a: 1}
maxColor: {r: 1, g: 0.5176471, b: 0, a: 1}
minMaxState: 0
startSize:
scalar: 0.5
@ -702,6 +719,76 @@ ParticleSystem:
m_PostInfinity: 2
m_RotationOrder: 4
minMaxState: 0
startSizeY:
scalar: 1
maxCurve:
serializedVersion: 2
m_Curve:
- time: 0
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
- time: 1
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
minCurve:
serializedVersion: 2
m_Curve:
- time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
- time: 1
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
minMaxState: 0
startSizeZ:
scalar: 1
maxCurve:
serializedVersion: 2
m_Curve:
- time: 0
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
- time: 1
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
minCurve:
serializedVersion: 2
m_Curve:
- time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
- time: 1
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
minMaxState: 0
startRotationX:
scalar: 0
maxCurve:
@ -810,6 +897,7 @@ ParticleSystem:
randomizeRotationDirection: 0
gravityModifier: 0
maxNumParticles: 100
size3D: 0
rotation3D: 0
ShapeModule:
serializedVersion: 2
@ -925,6 +1013,77 @@ ParticleSystem:
m_PostInfinity: 2
m_RotationOrder: 4
minMaxState: 1
y:
scalar: 1
maxCurve:
serializedVersion: 2
m_Curve:
- time: 0
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
- time: 1
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
minCurve:
serializedVersion: 2
m_Curve:
- time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
- time: 1
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
minMaxState: 1
z:
scalar: 1
maxCurve:
serializedVersion: 2
m_Curve:
- time: 0
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
- time: 1
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
minCurve:
serializedVersion: 2
m_Curve:
- time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
- time: 1
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
minMaxState: 1
separateAxes: 0
RotationModule:
enabled: 0
x:
@ -1036,6 +1195,7 @@ ParticleSystem:
ColorModule:
enabled: 0
gradient:
serializedVersion: 2
maxGradient:
key0:
serializedVersion: 2
@ -1122,17 +1282,13 @@ ParticleSystem:
atime7: 0
m_NumColorKeys: 2
m_NumAlphaKeys: 2
minColor:
serializedVersion: 2
rgba: 4294967295
maxColor:
serializedVersion: 2
rgba: 4294967295
minColor: {r: 1, g: 1, b: 1, a: 1}
maxColor: {r: 1, g: 1, b: 1, a: 1}
minMaxState: 1
UVModule:
enabled: 0
frameOverTime:
scalar: 1
scalar: 0.9999
maxCurve:
serializedVersion: 2
m_Curve:
@ -1166,11 +1322,47 @@ ParticleSystem:
m_PostInfinity: 2
m_RotationOrder: 4
minMaxState: 1
startFrame:
scalar: 0
maxCurve:
serializedVersion: 2
m_Curve:
- time: 0
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
- time: 1
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
minCurve:
serializedVersion: 2
m_Curve:
- time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
- time: 1
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
minMaxState: 0
tilesX: 1
tilesY: 1
animationType: 0
rowIndex: 0
cycles: 1
uvChannelMask: -1
randomRow: 1
VelocityModule:
enabled: 0
@ -1612,7 +1804,78 @@ ParticleSystem:
m_PostInfinity: 2
m_RotationOrder: 4
minMaxState: 1
y:
scalar: 1
maxCurve:
serializedVersion: 2
m_Curve:
- time: 0
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
- time: 1
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
minCurve:
serializedVersion: 2
m_Curve:
- time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
- time: 1
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
minMaxState: 1
z:
scalar: 1
maxCurve:
serializedVersion: 2
m_Curve:
- time: 0
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
- time: 1
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
minCurve:
serializedVersion: 2
m_Curve:
- time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
- time: 1
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
minMaxState: 1
range: {x: 0, y: 1}
separateAxes: 0
RotationBySpeedModule:
enabled: 0
x:
@ -1725,6 +1988,7 @@ ParticleSystem:
ColorBySpeedModule:
enabled: 0
gradient:
serializedVersion: 2
maxGradient:
key0:
serializedVersion: 2
@ -1811,17 +2075,13 @@ ParticleSystem:
atime7: 0
m_NumColorKeys: 2
m_NumAlphaKeys: 2
minColor:
serializedVersion: 2
rgba: 4294967295
maxColor:
serializedVersion: 2
rgba: 4294967295
minColor: {r: 1, g: 1, b: 1, a: 1}
maxColor: {r: 1, g: 1, b: 1, a: 1}
minMaxState: 1
range: {x: 0, y: 1}
CollisionModule:
enabled: 0
serializedVersion: 2
serializedVersion: 3
type: 0
collisionMode: 0
plane0: {fileID: 0}
@ -1936,6 +2196,7 @@ ParticleSystem:
m_RotationOrder: 4
minMaxState: 0
minKillSpeed: 0
maxKillSpeed: 10000
radiusScale: 1
collidesWith:
serializedVersion: 2
@ -1946,6 +2207,19 @@ ParticleSystem:
collisionMessages: 0
collidesWithDynamic: 1
interiorCollisions: 1
TriggerModule:
enabled: 0
collisionShape0: {fileID: 0}
collisionShape1: {fileID: 0}
collisionShape2: {fileID: 0}
collisionShape3: {fileID: 0}
collisionShape4: {fileID: 0}
collisionShape5: {fileID: 0}
inside: 1
outside: 0
enter: 0
exit: 0
radiusScale: 1
SubModule:
enabled: 0
subEmitterBirth: {fileID: 0}
@ -2037,6 +2311,7 @@ RectTransform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0.02, y: 0.02, z: 0.1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children:
- {fileID: 1618699050}
m_Father: {fileID: 0}
@ -2071,17 +2346,20 @@ SpriteRenderer:
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 0
m_Materials:
- {fileID: 10754, guid: 0000000000000000e000000000000000, type: 0}
- {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0}
m_SubsetIndices:
m_StaticBatchRoot: {fileID: 0}
m_UseLightProbes: 0
m_ReflectionProbeUsage: 0
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_SelectedWireframeHidden: 1
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
@ -2101,6 +2379,7 @@ Transform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 5.5483284, y: 48.482475, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 1675659861}
m_RootOrder: 0
@ -2129,6 +2408,7 @@ Transform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0.06, y: 0, z: 0}
m_LocalScale: {x: 4.661441, y: 48.482475, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 1675659861}
m_RootOrder: 1
@ -2141,17 +2421,20 @@ SpriteRenderer:
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 0
m_Materials:
- {fileID: 10754, guid: 0000000000000000e000000000000000, type: 0}
- {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0}
m_SubsetIndices:
m_StaticBatchRoot: {fileID: 0}
m_UseLightProbes: 0
m_ReflectionProbeUsage: 0
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_SelectedWireframeHidden: 1
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
@ -2187,6 +2470,7 @@ Transform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0.44, y: 0, z: 0}
m_LocalScale: {x: 0.44441086, y: 48.482475, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 1675659861}
m_RootOrder: 2
@ -2199,17 +2483,20 @@ SpriteRenderer:
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 0
m_Materials:
- {fileID: 10754, guid: 0000000000000000e000000000000000, type: 0}
- {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0}
m_SubsetIndices:
m_StaticBatchRoot: {fileID: 0}
m_UseLightProbes: 0
m_ReflectionProbeUsage: 0
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_SelectedWireframeHidden: 1
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
@ -2303,6 +2590,7 @@ Transform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: -10}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 0
@ -2332,6 +2620,7 @@ RectTransform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 624843597}
m_RootOrder: 0
@ -2422,17 +2711,20 @@ MeshRenderer:
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_Materials:
- {fileID: 2100000, guid: 4083cd422558e2540a62bbafb94f57b5, type: 2}
- {fileID: 2100000, guid: 1455e88fdb81ccc45bdeaedd657bad4d, type: 2}
m_SubsetIndices:
m_StaticBatchRoot: {fileID: 0}
m_UseLightProbes: 1
m_ReflectionProbeUsage: 1
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_SelectedWireframeHidden: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
@ -2455,6 +2747,7 @@ Transform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 93048079}
m_RootOrder: 1
@ -2482,6 +2775,7 @@ Transform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 3.5889997, y: 0.001999855, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children:
- {fileID: 774732877}
- {fileID: 1149289854}
@ -2526,17 +2820,20 @@ MeshRenderer:
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_Materials:
- {fileID: 2100000, guid: 4083cd422558e2540a62bbafb94f57b5, type: 2}
- {fileID: 2100000, guid: 1455e88fdb81ccc45bdeaedd657bad4d, type: 2}
m_SubsetIndices:
m_StaticBatchRoot: {fileID: 0}
m_UseLightProbes: 1
m_ReflectionProbeUsage: 1
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_SelectedWireframeHidden: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
@ -2559,6 +2856,7 @@ Transform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 1918225119}
m_RootOrder: 1
@ -2600,17 +2898,20 @@ MeshRenderer:
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_Materials:
- {fileID: 2100000, guid: 4083cd422558e2540a62bbafb94f57b5, type: 2}
- {fileID: 2100000, guid: 1455e88fdb81ccc45bdeaedd657bad4d, type: 2}
m_SubsetIndices:
m_StaticBatchRoot: {fileID: 0}
m_UseLightProbes: 1
m_ReflectionProbeUsage: 1
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_SelectedWireframeHidden: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
@ -2633,6 +2934,7 @@ Transform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 93048079}
m_RootOrder: 0
@ -2692,9 +2994,9 @@ MonoBehaviour:
renderMeshes: 1
immutableTriangles: 0
pmaVertexColors: 1
clearStateOnDisable: 0
calculateNormals: 0
calculateTangents: 0
frontFacing: 0
logErrors: 0
disableRenderingOnOverride: 1
_animationName:
@ -2709,18 +3011,21 @@ MeshRenderer:
m_Enabled: 0
m_CastShadows: 1
m_ReceiveShadows: 0
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 1
m_Materials:
- {fileID: 0}
- {fileID: 2100000, guid: 4083cd422558e2540a62bbafb94f57b5, type: 2}
- {fileID: 2100000, guid: 1455e88fdb81ccc45bdeaedd657bad4d, type: 2}
m_SubsetIndices:
m_StaticBatchRoot: {fileID: 0}
m_UseLightProbes: 0
m_ReflectionProbeUsage: 1
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_SelectedWireframeHidden: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
@ -2743,6 +3048,7 @@ Transform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: -6.18, y: -3.53, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children:
- {fileID: 122287543}
- {fileID: 1698487795}
@ -2791,6 +3097,7 @@ RectTransform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 51877973}
m_RootOrder: 0

View File

@ -13,7 +13,7 @@ SceneSettings:
--- !u!104 &2
RenderSettings:
m_ObjectHideFlags: 0
serializedVersion: 6
serializedVersion: 7
m_Fog: 0
m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
m_FogMode: 3
@ -37,12 +37,12 @@ RenderSettings:
m_ReflectionIntensity: 1
m_CustomReflection: {fileID: 0}
m_Sun: {fileID: 0}
m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1}
--- !u!157 &4
LightmapSettings:
m_ObjectHideFlags: 0
serializedVersion: 6
serializedVersion: 7
m_GIWorkflowMode: 1
m_LightmapsMode: 1
m_GISettings:
serializedVersion: 2
m_BounceScale: 1
@ -53,17 +53,22 @@ LightmapSettings:
m_EnableBakedLightmaps: 1
m_EnableRealtimeLightmaps: 0
m_LightmapEditorSettings:
serializedVersion: 3
serializedVersion: 4
m_Resolution: 1
m_BakeResolution: 50
m_TextureWidth: 1024
m_TextureHeight: 1024
m_AO: 0
m_AOMaxDistance: 1
m_Padding: 2
m_CompAOExponent: 0
m_CompAOExponentDirect: 0
m_Padding: 2
m_LightmapParameters: {fileID: 0}
m_LightmapsBakeMode: 1
m_TextureCompression: 0
m_DirectLightInLightProbes: 1
m_FinalGather: 0
m_FinalGatherFiltering: 1
m_FinalGatherRayCount: 1024
m_ReflectionCompression: 2
m_LightingDataAsset: {fileID: 0}
@ -108,9 +113,10 @@ Transform:
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 36219066}
m_LocalRotation: {x: 0, y: 0, z: -0.52048814, w: 0.8538689}
m_LocalRotation: {x: -0, y: -0, z: -0.5187491, w: 0.8549265}
m_LocalPosition: {x: -2.3325999, y: 1.2458895, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 973814792}
m_RootOrder: 1
@ -146,16 +152,14 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: b238dfcde8209044b97d23f62bcaadf6, type: 3}
m_Name:
m_EditorClassIdentifier:
boneName: rear_foot_goal
parentReference: {fileID: 0}
mode: 0
zPosition: 1
position: 1
rotation: 1
scale: 1
flip: 0
flipX: 0
zPosition: 1
overrideAlpha: 1
boneName: rear_foot_goal
parentReference: {fileID: 0}
--- !u!1 &44654812
GameObject:
m_ObjectHideFlags: 0
@ -180,6 +184,7 @@ Transform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children:
- {fileID: 973814792}
m_Father: {fileID: 120294521}
@ -212,6 +217,7 @@ Transform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: -0.15, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children:
- {fileID: 44654813}
m_Father: {fileID: 0}
@ -247,9 +253,9 @@ MonoBehaviour:
renderMeshes: 1
immutableTriangles: 0
pmaVertexColors: 1
clearStateOnDisable: 0
calculateNormals: 0
calculateTangents: 0
frontFacing: 0
logErrors: 0
disableRenderingOnOverride: 1
_animationName: walk
@ -264,17 +270,20 @@ MeshRenderer:
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 1
m_Materials:
- {fileID: 2100000, guid: 4e2feebfcaa26a54ab19f1ff3e0eae35, type: 2}
m_SubsetIndices:
m_StaticBatchRoot: {fileID: 0}
m_UseLightProbes: 0
m_ReflectionProbeUsage: 1
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_SelectedWireframeHidden: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
@ -310,9 +319,10 @@ Transform:
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 973814791}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children:
- {fileID: 1984548219}
- {fileID: 36219067}
@ -329,16 +339,14 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: b238dfcde8209044b97d23f62bcaadf6, type: 3}
m_Name:
m_EditorClassIdentifier:
boneName: root
parentReference: {fileID: 0}
mode: 0
zPosition: 1
position: 1
rotation: 1
scale: 1
flip: 0
flipX: 0
zPosition: 1
overrideAlpha: 1
boneName: root
parentReference: {fileID: 0}
--- !u!1 &976394122
GameObject:
m_ObjectHideFlags: 0
@ -422,6 +430,7 @@ Transform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 1, z: -12}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 0
@ -452,17 +461,20 @@ MeshRenderer:
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 1
m_Materials:
- {fileID: 10302, guid: 0000000000000000f000000000000000, type: 0}
m_SubsetIndices:
m_StaticBatchRoot: {fileID: 0}
m_UseLightProbes: 0
m_ReflectionProbeUsage: 1
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_SelectedWireframeHidden: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
@ -497,6 +509,7 @@ Transform:
m_LocalRotation: {x: 0, y: 0, z: -0.08522272, w: 0.996362}
m_LocalPosition: {x: 0.29366082, y: 0.13593975, z: 2}
m_LocalScale: {x: 13, y: 1, z: 2.6603487}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 2
@ -549,25 +562,24 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: b238dfcde8209044b97d23f62bcaadf6, type: 3}
m_Name:
m_EditorClassIdentifier:
boneName: front_foot_goal
parentReference: {fileID: 0}
mode: 0
zPosition: 1
position: 1
rotation: 1
scale: 1
flip: 0
flipX: 0
zPosition: 1
overrideAlpha: 1
boneName: front_foot_goal
parentReference: {fileID: 0}
--- !u!4 &1984548219
Transform:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1984548216}
m_LocalRotation: {x: 0, y: 0, z: -0.008202955, w: 0.9999664}
m_LocalRotation: {x: -0, y: -0, z: -0.00795751, w: 0.99996835}
m_LocalPosition: {x: 2.9748998, y: 0.3312556, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 973814792}
m_RootOrder: 0

View File

@ -13,7 +13,7 @@ SceneSettings:
--- !u!104 &2
RenderSettings:
m_ObjectHideFlags: 0
serializedVersion: 6
serializedVersion: 7
m_Fog: 0
m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
m_FogMode: 3
@ -37,12 +37,12 @@ RenderSettings:
m_ReflectionIntensity: 1
m_CustomReflection: {fileID: 0}
m_Sun: {fileID: 0}
m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1}
--- !u!157 &4
LightmapSettings:
m_ObjectHideFlags: 0
serializedVersion: 6
serializedVersion: 7
m_GIWorkflowMode: 1
m_LightmapsMode: 1
m_GISettings:
serializedVersion: 2
m_BounceScale: 1
@ -53,17 +53,22 @@ LightmapSettings:
m_EnableBakedLightmaps: 1
m_EnableRealtimeLightmaps: 0
m_LightmapEditorSettings:
serializedVersion: 3
serializedVersion: 4
m_Resolution: 1
m_BakeResolution: 50
m_TextureWidth: 1024
m_TextureHeight: 1024
m_AO: 0
m_AOMaxDistance: 1
m_Padding: 2
m_CompAOExponent: 0
m_CompAOExponentDirect: 0
m_Padding: 2
m_LightmapParameters: {fileID: 0}
m_LightmapsBakeMode: 1
m_TextureCompression: 0
m_DirectLightInLightProbes: 1
m_FinalGather: 0
m_FinalGatherFiltering: 1
m_FinalGatherRayCount: 1024
m_ReflectionCompression: 2
m_LightingDataAsset: {fileID: 0}
@ -172,12 +177,174 @@ RectTransform:
m_Children:
- {fileID: 2122594306}
m_Father: {fileID: 0}
m_RootOrder: 6
m_RootOrder: 5
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0, y: 0}
--- !u!1 &138285500
GameObject:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 183998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
m_PrefabInternal: {fileID: 0}
serializedVersion: 4
m_Component:
- 4: {fileID: 138285507}
- 33: {fileID: 138285506}
- 23: {fileID: 138285505}
- 114: {fileID: 138285504}
- 114: {fileID: 138285503}
- 114: {fileID: 138285502}
- 60: {fileID: 138285501}
m_Layer: 0
m_Name: Raggedy Spineboy
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!60 &138285501
PolygonCollider2D:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 6083998, guid: 5c60df38c5334a249b38ac8cddc6433b,
type: 2}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 138285500}
m_Enabled: 1
m_Density: 1
m_Material: {fileID: 0}
m_IsTrigger: 0
m_UsedByEffector: 0
m_Offset: {x: 0, y: 0}
m_Points:
m_Paths:
- - {x: -0.25825587, y: 3.1820273}
- {x: 0.31586242, y: 3.1818907}
- {x: 0.55882263, y: 2.040349}
- {x: 0.434707, y: 0.0013669459}
- {x: -0.45539615, y: 0.0013672132}
- {x: -0.61691463, y: 2.0021477}
--- !u!114 &138285502
MonoBehaviour:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 11483998, guid: 5c60df38c5334a249b38ac8cddc6433b,
type: 2}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 138285500}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 849a7739a7df0754882fcb34c09df4c1, type: 3}
m_Name:
m_EditorClassIdentifier:
groundMask:
serializedVersion: 2
m_Bits: 4294967295
restoreDuration: 0.5
launchVelocity: {x: 40, y: 85}
--- !u!114 &138285503
MonoBehaviour:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 11483996, guid: 5c60df38c5334a249b38ac8cddc6433b,
type: 2}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 138285500}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e74a49a26242a214d9084fde00bfe3ab, type: 3}
m_Name:
m_EditorClassIdentifier:
startingBoneName: hip
stopBoneNames: []
applyOnStart: 0
disableIK: 1
disableOtherConstraints: 0
pinStartBone: 0
gravityScale: 3
thickness: 0.125
rotationLimit: 20
rootMass: 40
massFalloffFactor: 0.504
colliderLayer: 0
mix: 1
--- !u!114 &138285504
MonoBehaviour:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 11483994, guid: 5c60df38c5334a249b38ac8cddc6433b,
type: 2}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 138285500}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d247ba06193faa74d9335f5481b2b56c, type: 3}
m_Name:
m_EditorClassIdentifier:
skeletonDataAsset: {fileID: 11400000, guid: 57484171e9b9c7243aa3117bc663e7b9, type: 2}
initialSkinName: default
separatorSlotNames: []
zSpacing: 0
renderMeshes: 1
immutableTriangles: 0
pmaVertexColors: 1
clearStateOnDisable: 0
calculateNormals: 0
calculateTangents: 0
logErrors: 0
disableRenderingOnOverride: 1
_animationName: animation
loop: 1
timeScale: 1
--- !u!23 &138285505
MeshRenderer:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 2383998, guid: 5c60df38c5334a249b38ac8cddc6433b,
type: 2}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 138285500}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 1
m_Materials:
- {fileID: 2100000, guid: 4ad4f7167d4983147ad870f93ebc9416, type: 2}
m_SubsetIndices:
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_SelectedWireframeHidden: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingOrder: 0
--- !u!33 &138285506
MeshFilter:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 3383998, guid: 5c60df38c5334a249b38ac8cddc6433b,
type: 2}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 138285500}
m_Mesh: {fileID: 0}
--- !u!4 &138285507
Transform:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 483998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 138285500}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: -2.55, y: -3.07, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 1
--- !u!1 &279948894
GameObject:
m_ObjectHideFlags: 0
@ -219,17 +386,20 @@ MeshRenderer:
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 1
m_Materials:
- {fileID: 10302, guid: 0000000000000000f000000000000000, type: 0}
m_SubsetIndices:
m_StaticBatchRoot: {fileID: 0}
m_UseLightProbes: 0
m_ReflectionProbeUsage: 1
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_SelectedWireframeHidden: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
@ -310,17 +480,20 @@ MeshRenderer:
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 1
m_Materials:
- {fileID: 10302, guid: 0000000000000000f000000000000000, type: 0}
m_SubsetIndices:
m_StaticBatchRoot: {fileID: 0}
m_UseLightProbes: 0
m_ReflectionProbeUsage: 1
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_SelectedWireframeHidden: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
@ -334,60 +507,6 @@ MeshFilter:
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 281786970}
m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0}
--- !u!1001 &410436501
Prefab:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: 483998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
propertyPath: m_LocalPosition.x
value: 4.67
objectReference: {fileID: 0}
- target: {fileID: 483998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
propertyPath: m_LocalPosition.y
value: -3.07
objectReference: {fileID: 0}
- target: {fileID: 483998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 483998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 483998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 483998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 483998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 483998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
propertyPath: m_RootOrder
value: 7
objectReference: {fileID: 0}
- target: {fileID: 3383998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
propertyPath: m_Mesh
value:
objectReference: {fileID: 0}
- target: {fileID: 11483996, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
propertyPath: colliderLayer
value: 0
objectReference: {fileID: 0}
- target: {fileID: 11483998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
propertyPath: groundMask.m_Bits
value: 4294967295
objectReference: {fileID: 0}
m_RemovedComponents: []
m_ParentPrefab: {fileID: 100100000, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
m_IsPrefabParent: 0
--- !u!1 &469940167
GameObject:
m_ObjectHideFlags: 0
@ -442,17 +561,20 @@ MeshRenderer:
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 1
m_Materials:
- {fileID: 10302, guid: 0000000000000000f000000000000000, type: 0}
m_SubsetIndices:
m_StaticBatchRoot: {fileID: 0}
m_UseLightProbes: 0
m_ReflectionProbeUsage: 1
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_SelectedWireframeHidden: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
@ -466,60 +588,168 @@ MeshFilter:
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 469940167}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!1001 &678089918
Prefab:
--- !u!1 &689192947
GameObject:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 183998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
m_PrefabInternal: {fileID: 0}
serializedVersion: 4
m_Component:
- 4: {fileID: 689192954}
- 33: {fileID: 689192953}
- 23: {fileID: 689192952}
- 114: {fileID: 689192951}
- 114: {fileID: 689192950}
- 114: {fileID: 689192949}
- 60: {fileID: 689192948}
m_Layer: 0
m_Name: Raggedy Spineboy
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!60 &689192948
PolygonCollider2D:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 6083998, guid: 5c60df38c5334a249b38ac8cddc6433b,
type: 2}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 689192947}
m_Enabled: 1
m_Density: 1
m_Material: {fileID: 0}
m_IsTrigger: 0
m_UsedByEffector: 0
m_Offset: {x: 0, y: 0}
m_Points:
m_Paths:
- - {x: -0.25825587, y: 3.1820273}
- {x: 0.31586242, y: 3.1818907}
- {x: 0.55882263, y: 2.040349}
- {x: 0.434707, y: 0.0013669459}
- {x: -0.45539615, y: 0.0013672132}
- {x: -0.61691463, y: 2.0021477}
--- !u!114 &689192949
MonoBehaviour:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 11483998, guid: 5c60df38c5334a249b38ac8cddc6433b,
type: 2}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 689192947}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 849a7739a7df0754882fcb34c09df4c1, type: 3}
m_Name:
m_EditorClassIdentifier:
groundMask:
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: 483998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
propertyPath: m_LocalPosition.x
value: -2.55
objectReference: {fileID: 0}
- target: {fileID: 483998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
propertyPath: m_LocalPosition.y
value: -3.07
objectReference: {fileID: 0}
- target: {fileID: 483998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 483998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 483998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 483998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 483998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 483998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
propertyPath: m_RootOrder
value: 1
objectReference: {fileID: 0}
- target: {fileID: 3383998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
propertyPath: m_Mesh
value:
objectReference: {fileID: 0}
- target: {fileID: 11483996, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
propertyPath: colliderLayer
value: 0
objectReference: {fileID: 0}
- target: {fileID: 11483998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
propertyPath: groundMask.m_Bits
value: 4294967295
objectReference: {fileID: 0}
m_RemovedComponents: []
m_ParentPrefab: {fileID: 100100000, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
m_IsPrefabParent: 0
m_Bits: 4294967295
restoreDuration: 0.5
launchVelocity: {x: 40, y: 85}
--- !u!114 &689192950
MonoBehaviour:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 11483996, guid: 5c60df38c5334a249b38ac8cddc6433b,
type: 2}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 689192947}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e74a49a26242a214d9084fde00bfe3ab, type: 3}
m_Name:
m_EditorClassIdentifier:
startingBoneName: hip
stopBoneNames: []
applyOnStart: 0
disableIK: 1
disableOtherConstraints: 0
pinStartBone: 0
gravityScale: 3
thickness: 0.125
rotationLimit: 20
rootMass: 40
massFalloffFactor: 0.504
colliderLayer: 0
mix: 1
--- !u!114 &689192951
MonoBehaviour:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 11483994, guid: 5c60df38c5334a249b38ac8cddc6433b,
type: 2}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 689192947}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d247ba06193faa74d9335f5481b2b56c, type: 3}
m_Name:
m_EditorClassIdentifier:
skeletonDataAsset: {fileID: 11400000, guid: 57484171e9b9c7243aa3117bc663e7b9, type: 2}
initialSkinName: default
separatorSlotNames: []
zSpacing: 0
renderMeshes: 1
immutableTriangles: 0
pmaVertexColors: 1
clearStateOnDisable: 0
calculateNormals: 0
calculateTangents: 0
logErrors: 0
disableRenderingOnOverride: 1
_animationName: animation
loop: 1
timeScale: 1
--- !u!23 &689192952
MeshRenderer:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 2383998, guid: 5c60df38c5334a249b38ac8cddc6433b,
type: 2}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 689192947}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 1
m_Materials:
- {fileID: 2100000, guid: 4ad4f7167d4983147ad870f93ebc9416, type: 2}
m_SubsetIndices:
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_SelectedWireframeHidden: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingOrder: 0
--- !u!33 &689192953
MeshFilter:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 3383998, guid: 5c60df38c5334a249b38ac8cddc6433b,
type: 2}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 689192947}
m_Mesh: {fileID: 0}
--- !u!4 &689192954
Transform:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 483998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 689192947}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 4.67, y: -3.07, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 6
--- !u!1 &890899334
GameObject:
m_ObjectHideFlags: 0
@ -561,17 +791,20 @@ MeshRenderer:
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 1
m_Materials:
- {fileID: 10302, guid: 0000000000000000f000000000000000, type: 0}
m_SubsetIndices:
m_StaticBatchRoot: {fileID: 0}
m_UseLightProbes: 0
m_ReflectionProbeUsage: 1
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_SelectedWireframeHidden: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
@ -639,17 +872,20 @@ MeshRenderer:
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 1
m_Materials:
- {fileID: 10302, guid: 0000000000000000f000000000000000, type: 0}
m_SubsetIndices:
m_StaticBatchRoot: {fileID: 0}
m_UseLightProbes: 0
m_ReflectionProbeUsage: 1
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_SelectedWireframeHidden: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
@ -712,7 +948,7 @@ Transform:
- {fileID: 1446269955}
- {fileID: 469940168}
m_Father: {fileID: 0}
m_RootOrder: 5
m_RootOrder: 4
--- !u!1 &1332258640
GameObject:
m_ObjectHideFlags: 0
@ -841,17 +1077,20 @@ MeshRenderer:
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 1
m_Materials:
- {fileID: 10302, guid: 0000000000000000f000000000000000, type: 0}
m_SubsetIndices:
m_StaticBatchRoot: {fileID: 0}
m_UseLightProbes: 0
m_ReflectionProbeUsage: 1
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_SelectedWireframeHidden: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
@ -878,6 +1117,168 @@ Transform:
m_Children: []
m_Father: {fileID: 1241879115}
m_RootOrder: 1
--- !u!1 &1417061241
GameObject:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 183998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
m_PrefabInternal: {fileID: 0}
serializedVersion: 4
m_Component:
- 4: {fileID: 1417061248}
- 33: {fileID: 1417061247}
- 23: {fileID: 1417061246}
- 114: {fileID: 1417061245}
- 114: {fileID: 1417061244}
- 114: {fileID: 1417061243}
- 60: {fileID: 1417061242}
m_Layer: 0
m_Name: Raggedy Spineboy
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!60 &1417061242
PolygonCollider2D:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 6083998, guid: 5c60df38c5334a249b38ac8cddc6433b,
type: 2}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1417061241}
m_Enabled: 1
m_Density: 1
m_Material: {fileID: 0}
m_IsTrigger: 0
m_UsedByEffector: 0
m_Offset: {x: 0, y: 0}
m_Points:
m_Paths:
- - {x: -0.25825587, y: 3.1820273}
- {x: 0.31586242, y: 3.1818907}
- {x: 0.55882263, y: 2.040349}
- {x: 0.434707, y: 0.0013669459}
- {x: -0.45539615, y: 0.0013672132}
- {x: -0.61691463, y: 2.0021477}
--- !u!114 &1417061243
MonoBehaviour:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 11483998, guid: 5c60df38c5334a249b38ac8cddc6433b,
type: 2}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1417061241}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 849a7739a7df0754882fcb34c09df4c1, type: 3}
m_Name:
m_EditorClassIdentifier:
groundMask:
serializedVersion: 2
m_Bits: 4294967295
restoreDuration: 0.5
launchVelocity: {x: 40, y: 85}
--- !u!114 &1417061244
MonoBehaviour:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 11483996, guid: 5c60df38c5334a249b38ac8cddc6433b,
type: 2}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1417061241}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e74a49a26242a214d9084fde00bfe3ab, type: 3}
m_Name:
m_EditorClassIdentifier:
startingBoneName: hip
stopBoneNames: []
applyOnStart: 0
disableIK: 1
disableOtherConstraints: 0
pinStartBone: 0
gravityScale: 3
thickness: 0.125
rotationLimit: 20
rootMass: 40
massFalloffFactor: 0.504
colliderLayer: 0
mix: 1
--- !u!114 &1417061245
MonoBehaviour:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 11483994, guid: 5c60df38c5334a249b38ac8cddc6433b,
type: 2}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1417061241}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d247ba06193faa74d9335f5481b2b56c, type: 3}
m_Name:
m_EditorClassIdentifier:
skeletonDataAsset: {fileID: 11400000, guid: 57484171e9b9c7243aa3117bc663e7b9, type: 2}
initialSkinName: default
separatorSlotNames: []
zSpacing: 0
renderMeshes: 1
immutableTriangles: 0
pmaVertexColors: 1
clearStateOnDisable: 0
calculateNormals: 0
calculateTangents: 0
logErrors: 0
disableRenderingOnOverride: 1
_animationName: animation
loop: 1
timeScale: 1
--- !u!23 &1417061246
MeshRenderer:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 2383998, guid: 5c60df38c5334a249b38ac8cddc6433b,
type: 2}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1417061241}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 1
m_Materials:
- {fileID: 2100000, guid: 4ad4f7167d4983147ad870f93ebc9416, type: 2}
m_SubsetIndices:
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_SelectedWireframeHidden: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingOrder: 0
--- !u!33 &1417061247
MeshFilter:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 3383998, guid: 5c60df38c5334a249b38ac8cddc6433b,
type: 2}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1417061241}
m_Mesh: {fileID: 0}
--- !u!4 &1417061248
Transform:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 483998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1417061241}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 2.5, y: -3.06, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 2
--- !u!1 &1442886939
GameObject:
m_ObjectHideFlags: 0
@ -919,17 +1320,20 @@ MeshRenderer:
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 1
m_Materials:
- {fileID: 10302, guid: 0000000000000000f000000000000000, type: 0}
m_SubsetIndices:
m_StaticBatchRoot: {fileID: 0}
m_UseLightProbes: 0
m_ReflectionProbeUsage: 1
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_SelectedWireframeHidden: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
@ -1010,17 +1414,20 @@ MeshRenderer:
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 1
m_Materials:
- {fileID: 10302, guid: 0000000000000000f000000000000000, type: 0}
m_SubsetIndices:
m_StaticBatchRoot: {fileID: 0}
m_UseLightProbes: 0
m_ReflectionProbeUsage: 1
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_SelectedWireframeHidden: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
@ -1034,60 +1441,6 @@ MeshFilter:
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1446269954}
m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0}
--- !u!1001 &1702096498
Prefab:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: 483998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
propertyPath: m_LocalPosition.x
value: 2.5
objectReference: {fileID: 0}
- target: {fileID: 483998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
propertyPath: m_LocalPosition.y
value: -3.06
objectReference: {fileID: 0}
- target: {fileID: 483998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 483998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 483998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 483998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 483998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 483998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
propertyPath: m_RootOrder
value: 4
objectReference: {fileID: 0}
- target: {fileID: 3383998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
propertyPath: m_Mesh
value:
objectReference: {fileID: 0}
- target: {fileID: 11483996, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
propertyPath: colliderLayer
value: 0
objectReference: {fileID: 0}
- target: {fileID: 11483998, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
propertyPath: groundMask.m_Bits
value: 4294967295
objectReference: {fileID: 0}
m_RemovedComponents: []
m_ParentPrefab: {fileID: 100100000, guid: 5c60df38c5334a249b38ac8cddc6433b, type: 2}
m_IsPrefabParent: 0
--- !u!1 &1938155299
GameObject:
m_ObjectHideFlags: 0
@ -1217,17 +1570,20 @@ MeshRenderer:
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 1
m_Materials:
- {fileID: 10302, guid: 0000000000000000f000000000000000, type: 0}
m_SubsetIndices:
m_StaticBatchRoot: {fileID: 0}
m_UseLightProbes: 0
m_ReflectionProbeUsage: 1
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_SelectedWireframeHidden: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
@ -1338,7 +1694,7 @@ Light:
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 2147465172}
m_Enabled: 1
serializedVersion: 6
serializedVersion: 7
m_Type: 2
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_Intensity: 2
@ -1348,6 +1704,7 @@ Light:
m_Shadows:
m_Type: 0
m_Resolution: -1
m_CustomResolution: -1
m_Strength: 1
m_Bias: 0.05
m_NormalBias: 0.4
@ -1360,10 +1717,10 @@ Light:
serializedVersion: 2
m_Bits: 4294967295
m_Lightmapping: 1
m_AreaSize: {x: 1, y: 1}
m_BounceIntensity: 1
m_ShadowRadius: 0
m_ShadowAngle: 0
m_AreaSize: {x: 1, y: 1}
--- !u!4 &2147465174
Transform:
m_ObjectHideFlags: 0
@ -1376,4 +1733,4 @@ Transform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 4
m_RootOrder: 3

View File

@ -13,7 +13,7 @@ SceneSettings:
--- !u!104 &2
RenderSettings:
m_ObjectHideFlags: 0
serializedVersion: 6
serializedVersion: 7
m_Fog: 0
m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
m_FogMode: 3
@ -37,12 +37,12 @@ RenderSettings:
m_ReflectionIntensity: 1
m_CustomReflection: {fileID: 0}
m_Sun: {fileID: 0}
m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1}
--- !u!157 &4
LightmapSettings:
m_ObjectHideFlags: 0
serializedVersion: 6
serializedVersion: 7
m_GIWorkflowMode: 1
m_LightmapsMode: 1
m_GISettings:
serializedVersion: 2
m_BounceScale: 1
@ -53,17 +53,22 @@ LightmapSettings:
m_EnableBakedLightmaps: 1
m_EnableRealtimeLightmaps: 0
m_LightmapEditorSettings:
serializedVersion: 3
serializedVersion: 4
m_Resolution: 1
m_BakeResolution: 50
m_TextureWidth: 1024
m_TextureHeight: 1024
m_AO: 0
m_AOMaxDistance: 1
m_Padding: 2
m_CompAOExponent: 0
m_CompAOExponentDirect: 0
m_Padding: 2
m_LightmapParameters: {fileID: 0}
m_LightmapsBakeMode: 1
m_TextureCompression: 0
m_DirectLightInLightProbes: 1
m_FinalGather: 0
m_FinalGatherFiltering: 1
m_FinalGatherRayCount: 1024
m_ReflectionCompression: 2
m_LightingDataAsset: {fileID: 0}
@ -85,6 +90,99 @@ NavMeshSettings:
cellSize: 0.16666666
manualCellSize: 0
m_NavMeshData: {fileID: 0}
--- !u!1 &351144566
GameObject:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
serializedVersion: 4
m_Component:
- 4: {fileID: 351144570}
- 33: {fileID: 351144569}
- 23: {fileID: 351144568}
- 114: {fileID: 351144567}
m_Layer: 0
m_Name: Spine GameObject (spineboy)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!114 &351144567
MonoBehaviour:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 351144566}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d247ba06193faa74d9335f5481b2b56c, type: 3}
m_Name:
m_EditorClassIdentifier:
skeletonDataAsset: {fileID: 11400000, guid: 44691b56ed7d1f04da0cbc2a52a91b8d, type: 2}
initialSkinName: default
separatorSlotNames: []
zSpacing: 0
renderMeshes: 1
immutableTriangles: 0
pmaVertexColors: 1
clearStateOnDisable: 0
calculateNormals: 0
calculateTangents: 0
logErrors: 0
disableRenderingOnOverride: 1
_animationName: idle
loop: 1
timeScale: 1
--- !u!23 &351144568
MeshRenderer:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 351144566}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_Materials:
- {fileID: 2100000, guid: 1455e88fdb81ccc45bdeaedd657bad4d, type: 2}
m_SubsetIndices:
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_SelectedWireframeHidden: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingOrder: 0
--- !u!33 &351144569
MeshFilter:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 351144566}
m_Mesh: {fileID: 0}
--- !u!4 &351144570
Transform:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 351144566}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: -0.3, y: -3.48, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 2
--- !u!1 &795271513
GameObject:
m_ObjectHideFlags: 0
@ -98,7 +196,7 @@ GameObject:
- 114: {fileID: 795271515}
- 114: {fileID: 795271514}
m_Layer: 0
m_Name: Gauge
m_Name: Spine GameObject (gauge)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
@ -115,7 +213,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: c888ce38da699d143a68153f26379a37, type: 3}
m_Name:
m_EditorClassIdentifier:
fillPercent: 0.388
fillPercent: 1
fillAnimationName: Fill
--- !u!114 &795271515
MonoBehaviour:
@ -135,9 +233,9 @@ MonoBehaviour:
renderMeshes: 1
immutableTriangles: 0
pmaVertexColors: 1
clearStateOnDisable: 0
calculateNormals: 0
calculateTangents: 0
frontFacing: 0
logErrors: 0
disableRenderingOnOverride: 1
--- !u!23 &795271516
@ -149,17 +247,20 @@ MeshRenderer:
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 1
m_Materials:
- {fileID: 2100000, guid: 9ab9bdbda020b3e46b5a3b0558ef591d, type: 2}
m_SubsetIndices:
m_StaticBatchRoot: {fileID: 0}
m_UseLightProbes: 0
m_ReflectionProbeUsage: 1
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_SelectedWireframeHidden: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
@ -173,9 +274,11 @@ Transform:
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 795271513}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalPosition: {x: 0, y: 4.09, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children:
- {fileID: 1025516230}
m_Father: {fileID: 0}
m_RootOrder: 1
--- !u!33 &795271518
@ -185,6 +288,127 @@ MeshFilter:
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 795271513}
m_Mesh: {fileID: 0}
--- !u!1 &1025516229
GameObject:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
serializedVersion: 4
m_Component:
- 4: {fileID: 1025516230}
- 114: {fileID: 1025516231}
m_Layer: 0
m_Name: Attack Spineboy
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1025516230
Transform:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1025516229}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: -2.672, y: -1.3108752, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children:
- {fileID: 1695530253}
m_Father: {fileID: 795271517}
m_RootOrder: 0
--- !u!114 &1025516231
MonoBehaviour:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1025516229}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 7eab8e63d650dc74c80d142cd4b9fe4b, type: 3}
m_Name:
m_EditorClassIdentifier:
spineboy: {fileID: 351144567}
gauge: {fileID: 795271514}
healthText: {fileID: 1847717249}
--- !u!1 &1053578423
GameObject:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
serializedVersion: 4
m_Component:
- 224: {fileID: 1053578424}
- 222: {fileID: 1053578426}
- 114: {fileID: 1053578425}
m_Layer: 5
m_Name: Text
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &1053578424
RectTransform:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1053578423}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 1695530253}
m_RootOrder: 0
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 436.7, y: 225.4}
m_SizeDelta: {x: 339.8, y: 53.2}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &1053578425
MonoBehaviour:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1053578423}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI,
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
m_FontData:
m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
m_FontSize: 36
m_FontStyle: 0
m_BestFit: 0
m_MinSize: 3
m_MaxSize: 48
m_Alignment: 0
m_AlignByGeometry: 0
m_RichText: 1
m_HorizontalOverflow: 1
m_VerticalOverflow: 1
m_LineSpacing: 1
m_Text: 'Press Spacebar to Attack Spineboy!
The health bar is a Spine skeleton.'
--- !u!222 &1053578426
CanvasRenderer:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1053578423}
--- !u!1 &1611520402
GameObject:
m_ObjectHideFlags: 0
@ -268,6 +492,158 @@ Transform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 1, z: -10}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 0
--- !u!1 &1695530249
GameObject:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
serializedVersion: 4
m_Component:
- 224: {fileID: 1695530253}
- 223: {fileID: 1695530252}
- 114: {fileID: 1695530251}
m_Layer: 5
m_Name: Canvas
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!114 &1695530251
MonoBehaviour:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1695530249}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 1980459831, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3}
m_Name:
m_EditorClassIdentifier:
m_UiScaleMode: 0
m_ReferencePixelsPerUnit: 100
m_ScaleFactor: 1
m_ReferenceResolution: {x: 800, y: 600}
m_ScreenMatchMode: 0
m_MatchWidthOrHeight: 0
m_PhysicalUnit: 3
m_FallbackScreenDPI: 96
m_DefaultSpriteDPI: 96
m_DynamicPixelsPerUnit: 1
--- !u!223 &1695530252
Canvas:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1695530249}
m_Enabled: 1
serializedVersion: 2
m_RenderMode: 2
m_Camera: {fileID: 0}
m_PlaneDistance: 100
m_PixelPerfect: 0
m_ReceivesEvents: 1
m_OverrideSorting: 0
m_OverridePixelPerfect: 0
m_SortingBucketNormalizedSize: 0
m_SortingLayerID: 0
m_SortingOrder: 0
m_TargetDisplay: 0
--- !u!224 &1695530253
RectTransform:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1695530249}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0.01, y: 0.01, z: 0.01}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children:
- {fileID: 1053578424}
- {fileID: 1847717248}
m_Father: {fileID: 1025516230}
m_RootOrder: 0
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 2.672, y: -2.779125}
m_SizeDelta: {x: 1920, y: 1080}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!1 &1847717247
GameObject:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
serializedVersion: 4
m_Component:
- 224: {fileID: 1847717248}
- 222: {fileID: 1847717250}
- 114: {fileID: 1847717249}
m_Layer: 5
m_Name: Health Text
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &1847717248
RectTransform:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1847717247}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 1695530253}
m_RootOrder: 1
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: -13, y: 343}
m_SizeDelta: {x: 339.8, y: 53.2}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &1847717249
MonoBehaviour:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1847717247}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI,
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
m_FontData:
m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
m_FontSize: 36
m_FontStyle: 0
m_BestFit: 0
m_MinSize: 3
m_MaxSize: 48
m_Alignment: 4
m_AlignByGeometry: 0
m_RichText: 1
m_HorizontalOverflow: 1
m_VerticalOverflow: 1
m_LineSpacing: 1
m_Text: 100/100
--- !u!222 &1847717250
CanvasRenderer:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1847717247}

View File

@ -0,0 +1,852 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!29 &1
SceneSettings:
m_ObjectHideFlags: 0
m_PVSData:
m_PVSObjectsArray: []
m_PVSPortalsArray: []
m_OcclusionBakeSettings:
smallestOccluder: 5
smallestHole: 0.25
backfaceThreshold: 100
--- !u!104 &2
RenderSettings:
m_ObjectHideFlags: 0
serializedVersion: 7
m_Fog: 0
m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
m_FogMode: 3
m_FogDensity: 0.01
m_LinearFogStart: 0
m_LinearFogEnd: 300
m_AmbientSkyColor: {r: 0.007352948, g: 0.007352948, b: 0.007352948, a: 1}
m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1}
m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1}
m_AmbientIntensity: 1
m_AmbientMode: 3
m_SkyboxMaterial: {fileID: 0}
m_HaloStrength: 0.5
m_FlareStrength: 1
m_FlareFadeSpeed: 3
m_HaloTexture: {fileID: 0}
m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0}
m_DefaultReflectionMode: 0
m_DefaultReflectionResolution: 128
m_ReflectionBounces: 1
m_ReflectionIntensity: 1
m_CustomReflection: {fileID: 0}
m_Sun: {fileID: 0}
m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1}
--- !u!157 &3
LightmapSettings:
m_ObjectHideFlags: 0
serializedVersion: 7
m_GIWorkflowMode: 1
m_GISettings:
serializedVersion: 2
m_BounceScale: 1
m_IndirectOutputScale: 1
m_AlbedoBoost: 1
m_TemporalCoherenceThreshold: 1
m_EnvironmentLightingMode: 0
m_EnableBakedLightmaps: 0
m_EnableRealtimeLightmaps: 0
m_LightmapEditorSettings:
serializedVersion: 4
m_Resolution: 2
m_BakeResolution: 40
m_TextureWidth: 1024
m_TextureHeight: 1024
m_AO: 0
m_AOMaxDistance: 1
m_CompAOExponent: 1
m_CompAOExponentDirect: 0
m_Padding: 2
m_LightmapParameters: {fileID: 0}
m_LightmapsBakeMode: 1
m_TextureCompression: 1
m_DirectLightInLightProbes: 1
m_FinalGather: 0
m_FinalGatherFiltering: 1
m_FinalGatherRayCount: 256
m_ReflectionCompression: 2
m_LightingDataAsset: {fileID: 0}
m_RuntimeCPUUsage: 25
--- !u!196 &4
NavMeshSettings:
serializedVersion: 2
m_ObjectHideFlags: 0
m_BuildSettings:
serializedVersion: 2
agentRadius: 0.5
agentHeight: 2
agentSlope: 45
agentClimb: 0.4
ledgeDropHeight: 0
maxJumpAcrossDistance: 0
accuratePlacement: 0
minRegionArea: 2
cellSize: 0.16666667
manualCellSize: 0
m_NavMeshData: {fileID: 0}
--- !u!1 &188173730
GameObject:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
serializedVersion: 4
m_Component:
- 4: {fileID: 188173732}
- 108: {fileID: 188173731}
m_Layer: 0
m_Name: '[LIGHT] Spotlight'
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!108 &188173731
Light:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 188173730}
m_Enabled: 1
serializedVersion: 7
m_Type: 0
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_Intensity: 2.57
m_Range: 12.94
m_SpotAngle: 56
m_CookieSize: 10
m_Shadows:
m_Type: 2
m_Resolution: -1
m_CustomResolution: -1
m_Strength: 1
m_Bias: 0.05
m_NormalBias: 0.4
m_NearPlane: 0.1
m_Cookie: {fileID: 0}
m_DrawHalo: 0
m_Flare: {fileID: 0}
m_RenderMode: 0
m_CullingMask:
serializedVersion: 2
m_Bits: 4294967295
m_Lightmapping: 4
m_AreaSize: {x: 1, y: 1}
m_BounceIntensity: 0
m_ShadowRadius: 0
m_ShadowAngle: 0
--- !u!4 &188173732
Transform:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 188173730}
m_LocalRotation: {x: 0.28993335, y: -0.20459291, z: -0.5390386, w: 0.7638834}
m_LocalPosition: {x: -1.85, y: 2.64, z: -6.397}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 12.793, y: -40.131, z: -75.40501}
m_Children: []
m_Father: {fileID: 195821303}
m_RootOrder: 1
--- !u!1 &195821302
GameObject:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
serializedVersion: 4
m_Component:
- 4: {fileID: 195821303}
m_Layer: 0
m_Name: LIGHTS
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &195821303
Transform:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 195821302}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children:
- {fileID: 935283315}
- {fileID: 188173732}
- {fileID: 1387304066}
- {fileID: 770573971}
m_Father: {fileID: 0}
m_RootOrder: 4
--- !u!1 &770573969
GameObject:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
serializedVersion: 4
m_Component:
- 4: {fileID: 770573971}
- 108: {fileID: 770573970}
m_Layer: 0
m_Name: '[LIGHT] Green Spotlight'
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!108 &770573970
Light:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 770573969}
m_Enabled: 1
serializedVersion: 7
m_Type: 0
m_Color: {r: 0.07586217, g: 1, b: 0, a: 1}
m_Intensity: 2.68
m_Range: 15
m_SpotAngle: 37
m_CookieSize: 10
m_Shadows:
m_Type: 0
m_Resolution: -1
m_CustomResolution: -1
m_Strength: 1
m_Bias: 0.05
m_NormalBias: 0.4
m_NearPlane: 0.2
m_Cookie: {fileID: 0}
m_DrawHalo: 0
m_Flare: {fileID: 0}
m_RenderMode: 0
m_CullingMask:
serializedVersion: 2
m_Bits: 4294967295
m_Lightmapping: 4
m_AreaSize: {x: 1, y: 1}
m_BounceIntensity: 0
m_ShadowRadius: 0
m_ShadowAngle: 0
--- !u!4 &770573971
Transform:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 770573969}
m_LocalRotation: {x: 0.0023665242, y: -0.5134523, z: -0.8581137, w: 0.0014160047}
m_LocalPosition: {x: 4.56, y: -8.77, z: -3.03}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 241.77, y: 179.351, z: 0.57199097}
m_Children: []
m_Father: {fileID: 195821303}
m_RootOrder: 3
--- !u!1 &845252278
GameObject:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
serializedVersion: 4
m_Component:
- 4: {fileID: 845252281}
- 33: {fileID: 845252280}
- 23: {fileID: 845252279}
m_Layer: 0
m_Name: Wall
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!23 &845252279
MeshRenderer:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 845252278}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_Materials:
- {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0}
m_SubsetIndices:
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 1
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_SelectedWireframeHidden: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingOrder: 0
--- !u!33 &845252280
MeshFilter:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 845252278}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!4 &845252281
Transform:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 845252278}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0.28, y: 0.77, z: 2}
m_LocalScale: {x: 19.353024, y: 6.9264994, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 3
--- !u!1 &933136133
GameObject:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
serializedVersion: 4
m_Component:
- 4: {fileID: 933136137}
- 33: {fileID: 933136136}
- 23: {fileID: 933136135}
- 114: {fileID: 933136134}
m_Layer: 0
m_Name: stretchyman static
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!114 &933136134
MonoBehaviour:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 933136133}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e075b9a3e08e2f74fbd651c858ab16ed, type: 3}
m_Name:
m_EditorClassIdentifier:
skeletonDataAsset: {fileID: 11400000, guid: 162719d41016c854abf0355feb0e14e8, type: 2}
initialSkinName: default
separatorSlotNames: []
zSpacing: 0
renderMeshes: 1
immutableTriangles: 0
pmaVertexColors: 1
clearStateOnDisable: 0
calculateNormals: 0
calculateTangents: 1
logErrors: 0
disableRenderingOnOverride: 1
--- !u!23 &933136135
MeshRenderer:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 933136133}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_Materials:
- {fileID: 2100000, guid: 824cfb62bcbe3db49a3ce6db7e3757d1, type: 2}
m_SubsetIndices:
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_SelectedWireframeHidden: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingOrder: 0
--- !u!33 &933136136
MeshFilter:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 933136133}
m_Mesh: {fileID: 0}
--- !u!4 &933136137
Transform:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 933136133}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: -5.61, y: -3.69, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 2
--- !u!1 &935283313
GameObject:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
serializedVersion: 4
m_Component:
- 4: {fileID: 935283315}
- 108: {fileID: 935283314}
m_Layer: 0
m_Name: '[LIGHT] Point light'
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!108 &935283314
Light:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 935283313}
m_Enabled: 1
serializedVersion: 7
m_Type: 2
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_Intensity: 1
m_Range: 5
m_SpotAngle: 30
m_CookieSize: 10
m_Shadows:
m_Type: 0
m_Resolution: -1
m_CustomResolution: -1
m_Strength: 1
m_Bias: 0.05
m_NormalBias: 0.4
m_NearPlane: 0.2
m_Cookie: {fileID: 0}
m_DrawHalo: 0
m_Flare: {fileID: 0}
m_RenderMode: 0
m_CullingMask:
serializedVersion: 2
m_Bits: 4294967295
m_Lightmapping: 4
m_AreaSize: {x: 1, y: 1}
m_BounceIntensity: 0
m_ShadowRadius: 0
m_ShadowAngle: 0
--- !u!4 &935283315
Transform:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 935283313}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: -5.81, y: 0.56, z: -0.9}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 195821303}
m_RootOrder: 0
--- !u!1 &1313996752
GameObject:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
serializedVersion: 4
m_Component:
- 4: {fileID: 1313996753}
- 212: {fileID: 1313996754}
m_Layer: 0
m_Name: New Sprite
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1313996753
Transform:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1313996752}
m_LocalRotation: {x: 0.27059805, y: 0.65328157, z: 0.27059805, w: 0.6532815}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 90.00001, z: 45}
m_Children: []
m_Father: {fileID: 1387304066}
m_RootOrder: 0
--- !u!212 &1313996754
SpriteRenderer:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1313996752}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 0
m_Materials:
- {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0}
m_SubsetIndices:
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_SelectedWireframeHidden: 1
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingOrder: 0
m_Sprite: {fileID: 21300000, guid: 718074e4e56a5404e824bf8e6571ea7d, type: 3}
m_Color: {r: 1, g: 0, b: 0, a: 1}
m_FlipX: 0
m_FlipY: 0
--- !u!1 &1387304064
GameObject:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
serializedVersion: 4
m_Component:
- 4: {fileID: 1387304066}
- 108: {fileID: 1387304065}
- 114: {fileID: 1387304067}
m_Layer: 0
m_Name: '[LIGHT] Rotating light'
m_TagString: Untagged
m_Icon: {fileID: 5132851093641282708, guid: 0000000000000000d000000000000000, type: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!108 &1387304065
Light:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1387304064}
m_Enabled: 1
serializedVersion: 7
m_Type: 1
m_Color: {r: 1, g: 0.14482759, b: 0, a: 1}
m_Intensity: 1.96
m_Range: 10
m_SpotAngle: 30
m_CookieSize: 10
m_Shadows:
m_Type: 0
m_Resolution: -1
m_CustomResolution: -1
m_Strength: 1
m_Bias: 0.05
m_NormalBias: 0.4
m_NearPlane: 0.2
m_Cookie: {fileID: 0}
m_DrawHalo: 0
m_Flare: {fileID: 0}
m_RenderMode: 0
m_CullingMask:
serializedVersion: 2
m_Bits: 4294967295
m_Lightmapping: 4
m_AreaSize: {x: 1, y: 1}
m_BounceIntensity: 1
m_ShadowRadius: 0
m_ShadowAngle: 0
--- !u!4 &1387304066
Transform:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1387304064}
m_LocalRotation: {x: -0.7059173, y: -0.04099956, z: 0.705917, w: -0.04099958}
m_LocalPosition: {x: 0.077, y: 3.594, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: -186.648, y: 89.99999, z: 0}
m_Children:
- {fileID: 1313996753}
- {fileID: 1443231423}
m_Father: {fileID: 195821303}
m_RootOrder: 2
--- !u!114 &1387304067
MonoBehaviour:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1387304064}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 12e291cb54756d04c9dd53ad6e00a126, type: 3}
m_Name:
m_EditorClassIdentifier:
direction: {x: 1, y: 0, z: 0}
speed: 1.5
--- !u!1 &1443231422
GameObject:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
serializedVersion: 4
m_Component:
- 4: {fileID: 1443231423}
- 212: {fileID: 1443231424}
m_Layer: 0
m_Name: New Sprite (1)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1443231423
Transform:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1443231422}
m_LocalRotation: {x: 0, y: 0.7071068, z: 0, w: 0.70710677}
m_LocalPosition: {x: 0, y: 0.015, z: -0.234}
m_LocalScale: {x: 1.5390148, y: 1.5390143, z: 1.5390143}
m_LocalEulerAnglesHint: {x: 0, y: 90.00001, z: 0}
m_Children: []
m_Father: {fileID: 1387304066}
m_RootOrder: 1
--- !u!212 &1443231424
SpriteRenderer:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1443231422}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 0
m_Materials:
- {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0}
m_SubsetIndices:
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_SelectedWireframeHidden: 1
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingOrder: 7
m_Sprite: {fileID: 21300000, guid: 718074e4e56a5404e824bf8e6571ea7d, type: 3}
m_Color: {r: 0, g: 0, b: 0, a: 1}
m_FlipX: 0
m_FlipY: 0
--- !u!1 &1628453470
GameObject:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
serializedVersion: 4
m_Component:
- 4: {fileID: 1628453474}
- 33: {fileID: 1628453473}
- 23: {fileID: 1628453472}
- 114: {fileID: 1628453471}
m_Layer: 0
m_Name: stretchyman animated
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!114 &1628453471
MonoBehaviour:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1628453470}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d247ba06193faa74d9335f5481b2b56c, type: 3}
m_Name:
m_EditorClassIdentifier:
skeletonDataAsset: {fileID: 11400000, guid: 162719d41016c854abf0355feb0e14e8, type: 2}
initialSkinName: default
separatorSlotNames: []
zSpacing: 0
renderMeshes: 1
immutableTriangles: 0
pmaVertexColors: 1
clearStateOnDisable: 0
calculateNormals: 0
calculateTangents: 1
logErrors: 0
disableRenderingOnOverride: 1
_animationName: sneak
loop: 1
timeScale: 0.25
--- !u!23 &1628453472
MeshRenderer:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1628453470}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_Materials:
- {fileID: 2100000, guid: 824cfb62bcbe3db49a3ce6db7e3757d1, type: 2}
m_SubsetIndices:
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_SelectedWireframeHidden: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingOrder: 0
--- !u!33 &1628453473
MeshFilter:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1628453470}
m_Mesh: {fileID: 0}
--- !u!4 &1628453474
Transform:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1628453470}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: -6.47, y: -3.59, z: 1.03}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 1
--- !u!1 &1667748200
GameObject:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
serializedVersion: 4
m_Component:
- 4: {fileID: 1667748205}
- 20: {fileID: 1667748204}
- 92: {fileID: 1667748203}
- 124: {fileID: 1667748202}
- 81: {fileID: 1667748201}
m_Layer: 0
m_Name: Main Camera
m_TagString: MainCamera
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!81 &1667748201
AudioListener:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1667748200}
m_Enabled: 1
--- !u!124 &1667748202
Behaviour:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1667748200}
m_Enabled: 1
--- !u!92 &1667748203
Behaviour:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1667748200}
m_Enabled: 1
--- !u!20 &1667748204
Camera:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1667748200}
m_Enabled: 1
serializedVersion: 2
m_ClearFlags: 1
m_BackGroundColor: {r: 0.029411793, g: 0.028979266, b: 0.028979266, a: 0}
m_NormalizedViewPortRect:
serializedVersion: 2
x: 0
y: 0
width: 1
height: 1
near clip plane: 0.3
far clip plane: 1000
field of view: 60
orthographic: 1
orthographic size: 5
m_Depth: -1
m_CullingMask:
serializedVersion: 2
m_Bits: 4294967295
m_RenderingPath: -1
m_TargetTexture: {fileID: 0}
m_TargetDisplay: 0
m_TargetEye: 3
m_HDR: 0
m_OcclusionCulling: 1
m_StereoConvergence: 10
m_StereoSeparation: 0.022
m_StereoMirrorMode: 0
--- !u!4 &1667748205
Transform:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1667748200}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: -10}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 0

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 0862248ab668ce749845b0d7de5c6355
timeCreated: 1479531945
licenseType: Free
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,4 +1,4 @@
/******************************************************************************
/******************************************************************************
* Spine Runtimes Software License v2.5
*
* Copyright (c) 2013-2016, Esoteric Software
@ -28,22 +28,36 @@
* POSSIBILITY OF SUCH DAMAGE.
*****************************************************************************/
// Contributed by: Mitch Thompson
using UnityEngine;
using Spine.Unity;
using UnityEngine.UI;
public class Chimera : MonoBehaviour {
namespace Spine.Unity.Examples {
public class AttackSpineboy : MonoBehaviour {
public SkeletonDataAsset skeletonDataSource;
public SkeletonAnimation spineboy;
public SpineGauge gauge;
public Text healthText;
[SpineAttachment(currentSkinOnly: false, returnAttachmentPath: true, dataField: "skeletonDataSource")]
public string attachmentPath;
int currentHealth = 100;
const int maxHealth = 100;
[SpineSlot]
public string targetSlot;
void Update () {
if (Input.GetKeyDown(KeyCode.Space)) {
currentHealth -= 10;
healthText.text = currentHealth + "/" + maxHealth;
void Start() {
GetComponent<SkeletonRenderer>().skeleton.FindSlot(targetSlot).Attachment = SpineAttachment.GetAttachment(attachmentPath, skeletonDataSource);
if (currentHealth > 0) {
spineboy.state.SetAnimation(0, "hit", false);
spineboy.state.AddAnimation(0, "idle", true, 0);
gauge.fillPercent = (float)currentHealth/(float)maxHealth;
} else {
if (currentHealth >= 0) {
gauge.fillPercent = 0;
spineboy.state.SetAnimation(0, "death", false).TrackEnd = float.PositiveInfinity;
}
}
}
}
}
}

View File

@ -1,5 +1,7 @@
fileFormatVersion: 2
guid: 5053fe97a7657b5418b0c307b7338b0c
guid: 7eab8e63d650dc74c80d142cd4b9fe4b
timeCreated: 1480095094
licenseType: Free
MonoImporter:
serializedVersion: 2
defaultReferences: []

View File

@ -34,7 +34,8 @@ using UnityEngine;
using System.Collections;
using Spine.Unity;
public class FootSoldierExample : MonoBehaviour {
namespace Spine.Unity.Examples {
public class FootSoldierExample : MonoBehaviour {
[SpineAnimation("Idle")]
public string idleAnimation;
@ -62,18 +63,18 @@ public class FootSoldierExample : MonoBehaviour {
public float moveSpeed = 3;
private SkeletonAnimation skeletonAnimation;
SkeletonAnimation skeletonAnimation;
void Awake() {
void Awake () {
skeletonAnimation = GetComponent<SkeletonAnimation>();
skeletonAnimation.OnRebuild += Apply;
}
void Apply(SkeletonRenderer skeletonRenderer) {
void Apply (SkeletonRenderer skeletonRenderer) {
StartCoroutine("Blink");
}
void Update() {
void Update () {
if (Input.GetKey(attackKey)) {
skeletonAnimation.AnimationName = attackAnimation;
} else {
@ -99,4 +100,5 @@ public class FootSoldierExample : MonoBehaviour {
skeletonAnimation.skeleton.SetAttachment(eyesSlot, eyesOpenAttachment);
}
}
}
}

View File

@ -29,14 +29,17 @@
*****************************************************************************/
using UnityEngine;
using System.Collections;
using Spine;
using Spine.Unity;
public class Goblins : MonoBehaviour {
private bool girlSkin;
private SkeletonAnimation skeletonAnimation;
private Bone headBone;
namespace Spine.Unity.Examples {
public class Goblins : MonoBehaviour {
SkeletonAnimation skeletonAnimation;
Bone headBone;
bool girlSkin;
[Range(-360, 360)]
public float extraRotation;
public void Start () {
skeletonAnimation = GetComponent<SkeletonAnimation>();
@ -46,7 +49,7 @@ public class Goblins : MonoBehaviour {
// This is called after the animation is applied to the skeleton and can be used to adjust the bones dynamically.
public void UpdateLocal (ISkeletonAnimation skeletonRenderer) {
headBone.Rotation += 15;
headBone.Rotation += extraRotation;
}
public void OnMouseDown () {
@ -61,4 +64,5 @@ public class Goblins : MonoBehaviour {
} else
skeletonAnimation.skeleton.SetAttachment("left hand item", "dagger");
}
}
}

View File

@ -0,0 +1,112 @@
/******************************************************************************
* Spine Runtimes Software License v2.5
*
* Copyright (c) 2013-2016, Esoteric Software
* All rights reserved.
*
* You are granted a perpetual, non-exclusive, non-sublicensable, and
* non-transferable license to use, install, execute, and perform the Spine
* Runtimes software and derivative works solely for personal or internal
* use. Without the written permission of Esoteric Software (see Section 2 of
* the Spine Software License Agreement), you may not (a) modify, translate,
* adapt, or develop new applications using the Spine Runtimes or otherwise
* create derivative works or improvements of the Spine Runtimes or (b) remove,
* delete, alter, or obscure any trademarks or any copyright, trademark, patent,
* or other intellectual property or proprietary rights notices on or in the
* Software, including any copy thereof. Redistributions in binary or source
* form must include this license and terms.
*
* THIS SOFTWARE IS PROVIDED BY ESOTERIC SOFTWARE "AS IS" AND ANY EXPRESS OR
* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
* EVENT SHALL ESOTERIC SOFTWARE BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES, BUSINESS INTERRUPTION, OR LOSS OF
* USE, DATA, OR PROFITS) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
* IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*****************************************************************************/
using UnityEngine;
using Spine.Unity.Modules.AttachmentTools;
namespace Spine.Unity.Examples {
public class MixAndMatch : MonoBehaviour {
#region Inspector
[Header("From AtlasAsset")]
public AtlasAsset handSource;
[SpineAtlasRegion("handSource")] public string handRegion = "hand";
[SpineAttachment] public string handAttachmentName;
[SpineSlot] public string handSlot;
public Vector2 newHandOffset;
public float newHandRotation;
public Texture2D handTexture;
[Header("From Sprite")]
public Sprite dagger;
public string daggerName = "dagger";
[SpineSlot] public string weaponSlot;
[Header("MeshAttachment.SetRegion")]
public bool applyHeadRegion = false;
public AtlasAsset headSource;
[SpineAtlasRegion("headSource")] public string headRegion;
[SpineSlot] public string headSlot;
[SpineAttachment] public string headAttachmentName;
[Header("Runtime Repack")]
public bool repack = true;
public Shader repackedShader;
[Header("Do not assign")]
public Texture2D runtimeAtlas;
public Material runtimeMaterial;
#endregion
void Start () {
var skeletonAnimation = GetComponent<SkeletonAnimation>();
var skeleton = skeletonAnimation.Skeleton;
// All attachment changes will be applied to the skin. We use a clone so other instances will not be affected.
var newSkin = skeleton.UnshareSkin(true, false, skeletonAnimation.AnimationState);
// Case 1: Create an attachment from an atlas.
RegionAttachment newHand = handSource.GetAtlas().FindRegion(handRegion).ToRegionAttachment("new hand");
newHand.SetPositionOffset(newHandOffset);
newHand.rotation = newHandRotation;
newHand.UpdateOffset();
int handSlotIndex = skeleton.FindSlotIndex(handSlot);
handTexture = newHand.GetRegion().ToTexture();
newSkin.AddAttachment(handSlotIndex, handAttachmentName, newHand);
// Case 2: Create an attachment from a Unity Sprite (Sprite texture needs to be Read/Write Enabled in the inspector.
RegionAttachment newWeapon = dagger.ToRegionAttachmentPMAClone(Shader.Find("Spine/Skeleton"));
newWeapon.SetScale(1.5f, 1.5f);
newWeapon.UpdateOffset();
int weaponSlotIndex = skeleton.FindSlotIndex(weaponSlot);
newSkin.AddAttachment(weaponSlotIndex, daggerName, newWeapon);
// Case 3: Change an existing attachment's backing region.
if (applyHeadRegion) {
AtlasRegion spineBoyHead = headSource.GetAtlas().FindRegion(headRegion);
int headSlotIndex = skeleton.FindSlotIndex(headSlot);
var newHead = newSkin.GetAttachment(headSlotIndex, headAttachmentName).GetClone(true);
newHead.SetRegion(spineBoyHead);
newSkin.AddAttachment(headSlotIndex, headAttachmentName, newHead);
}
// Case 4: Repacking a mixed-and-matched skin to minimize draw calls.
// Repacking requires that you set all source textures/sprites/atlases to be Read/Write enabled in the inspector.
if (repack)
newSkin = newSkin.GetRepackedSkin("repacked", repackedShader, out runtimeMaterial, out runtimeAtlas);
skeleton.SetSkin(newSkin);
skeleton.SetToSetupPose();
skeleton.SetAttachment(weaponSlot, daggerName);
}
}
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: fdd7c8b428f700c438a6a14addca0346
timeCreated: 1480089275
licenseType: Free
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -32,7 +32,8 @@ using UnityEngine;
using System.Collections;
using Spine.Unity;
public class RaggedySpineboy : MonoBehaviour {
namespace Spine.Unity.Examples {
public class RaggedySpineboy : MonoBehaviour {
public LayerMask groundMask;
public float restoreDuration = 0.5f;
@ -42,7 +43,6 @@ public class RaggedySpineboy : MonoBehaviour {
Collider2D naturalCollider;
void Start () {
ragdoll = GetComponent<Spine.Unity.Modules.SkeletonRagdoll2D>();
naturalCollider = GetComponent<Collider2D>();
}
@ -62,15 +62,10 @@ public class RaggedySpineboy : MonoBehaviour {
naturalCollider.enabled = false;
}
void Update () {
}
void OnMouseUp () {
if (naturalCollider.enabled) {
if (naturalCollider.enabled)
Launch();
}
}
void Launch () {
RemoveRigidbody();
@ -88,7 +83,6 @@ public class RaggedySpineboy : MonoBehaviour {
if (hit.collider != null)
skeletonPoint = hit.point;
ragdoll.RootRigidbody.isKinematic = true;
ragdoll.SetSkeletonPosition(skeletonPoint);
@ -103,14 +97,11 @@ public class RaggedySpineboy : MonoBehaviour {
float t = 0;
while (t < 0.5f) {
if (ragdoll.RootRigidbody.velocity.magnitude > 0.09f)
t = 0;
else
t += Time.deltaTime;
t = (ragdoll.RootRigidbody.velocity.magnitude > 0.09f) ? 0 : t + Time.deltaTime;
yield return null;
}
StartCoroutine(Restore());
}
}
}

View File

@ -0,0 +1,12 @@
using UnityEngine;
namespace Spine.Unity.Examples {
public class Rotator : MonoBehaviour {
public Vector3 direction = new Vector3(0, 0, 1f);
public float speed = 1f;
void Update () {
transform.Rotate(direction * (speed * Time.deltaTime * 100f));
}
}
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 12e291cb54756d04c9dd53ad6e00a126
timeCreated: 1479532891
licenseType: Free
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -29,12 +29,12 @@
*****************************************************************************/
using UnityEngine;
using System.Collections;
using Spine.Unity;
[ExecuteInEditMode]
[RequireComponent(typeof(SkeletonRenderer))]
public class SpineGauge : MonoBehaviour {
namespace Spine.Unity.Examples {
[ExecuteInEditMode]
[RequireComponent(typeof(SkeletonRenderer))]
public class SpineGauge : MonoBehaviour {
#region Inspector
[Range(0,1)]
@ -49,26 +49,27 @@ public class SpineGauge : MonoBehaviour {
void Awake () {
skeletonRenderer = GetComponent<SkeletonRenderer>();
}
void Update () {
SetGaugePercent(fillPercent);
}
public void SetGaugePercent (float x) {
public void SetGaugePercent (float percent) {
if (skeletonRenderer == null) return;
var skeleton = skeletonRenderer.skeleton; if (skeleton == null) return;
// Make super-sure that fillAnimation isn't null. Early exit if it is.
// Make super-sure that fillAnimation isn't null.
if (fillAnimation == null) {
fillAnimation = skeleton.Data.FindAnimation(fillAnimationName);
if (fillAnimation == null) return;
}
fillAnimation.Apply(skeleton, 0, x, false, null, 1f, true, false);
fillAnimation.Apply(skeleton, 0, percent, false, null, 1f, true, false);
skeleton.Update(Time.deltaTime);
skeleton.UpdateWorldTransform();
}
}
}

View File

@ -33,7 +33,8 @@ using UnityEngine;
using Spine;
using Spine.Unity;
public class Spineboy : MonoBehaviour {
namespace Spine.Unity.Examples {
public class Spineboy : MonoBehaviour {
SkeletonAnimation skeletonAnimation;
public void Start () {
@ -54,4 +55,6 @@ public class Spineboy : MonoBehaviour {
skeletonAnimation.state.SetAnimation(0, "jump", false); // Set jump to be played on track 0 immediately.
skeletonAnimation.state.AddAnimation(0, "run", true, 0); // Queue walk to be looped on track 0 after the jump animation.
}
}
}

View File

@ -34,7 +34,8 @@ using Spine.Unity;
using Spine.Unity.Modules;
public class SpineboyPole : MonoBehaviour {
namespace Spine.Unity.Examples {
public class SpineboyPole : MonoBehaviour {
public SkeletonAnimation skeletonAnimation;
public SkeletonRenderSeparator separator;
@ -68,8 +69,9 @@ public class SpineboyPole : MonoBehaviour {
SetXPosition(endX);
separator.enabled = true; // Enable Separator when hit
var poleTrack = state.SetAnimation(0, pole, false);
yield return new WaitForSpineAnimationComplete(poleTrack);
yield return new WaitForSeconds(1f);
float duration = poleTrack.TrackEnd;
poleTrack.TrackEnd = float.PositiveInfinity;
yield return new WaitForSeconds(duration + 1f);
}
}
@ -78,4 +80,6 @@ public class SpineboyPole : MonoBehaviour {
tp.x = x;
transform.localPosition = tp;
}
}
}

View File

@ -1,9 +1,30 @@
fileFormatVersion: 2
guid: 6bc52290ef03f2846ba38d67e2823598
timeCreated: 1467205225
timeCreated: 1479419653
licenseType: Free
TextureImporter:
fileIDToRecycleName: {}
fileIDToRecycleName:
21300000: L_rear_thigh
21300002: L_wing01
21300004: L_wing02
21300006: L_wing03
21300008: L_wing05
21300010: L_wing06
21300012: R_wing01
21300014: R_wing02
21300016: R_wing03
21300018: R_wing05
21300020: R_wing06
21300022: R_wing07
21300024: R_wing08
21300026: R_wing09
21300028: back
21300030: chest
21300032: front_toeA
21300034: head
21300036: logo
21300038: tail01
21300040: tail03
serializedVersion: 2
mipmaps:
mipMapMode: 0
@ -46,10 +67,285 @@ TextureImporter:
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 5
buildTargetSettings: []
spriteSheet:
sprites: []
serializedVersion: 2
sprites:
- serializedVersion: 2
name: L_rear_thigh
rect:
serializedVersion: 2
x: 895
y: 856
width: 91
height: 148
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: L_wing01
rect:
serializedVersion: 2
x: 814
y: 96
width: 191
height: 256
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: L_wing02
rect:
serializedVersion: 2
x: 714
y: 566
width: 179
height: 269
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: L_wing03
rect:
serializedVersion: 2
x: 785
y: 354
width: 186
height: 207
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: L_wing05
rect:
serializedVersion: 2
x: 2
y: 797
width: 213
height: 218
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: L_wing06
rect:
serializedVersion: 2
x: 2
y: 464
width: 192
height: 331
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: R_wing01
rect:
serializedVersion: 2
x: 502
y: 96
width: 310
height: 219
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: R_wing02
rect:
serializedVersion: 2
x: 204
y: 358
width: 305
height: 203
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: R_wing03
rect:
serializedVersion: 2
x: 511
y: 317
width: 272
height: 247
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: R_wing05
rect:
serializedVersion: 2
x: 196
y: 563
width: 251
height: 229
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: R_wing06
rect:
serializedVersion: 2
x: 2
y: 96
width: 200
height: 366
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: R_wing07
rect:
serializedVersion: 2
x: 449
y: 566
width: 263
height: 200
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: R_wing08
rect:
serializedVersion: 2
x: 467
y: 768
width: 234
height: 254
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: R_wing09
rect:
serializedVersion: 2
x: 217
y: 794
width: 248
height: 204
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: back
rect:
serializedVersion: 2
x: 703
y: 837
width: 190
height: 185
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: chest
rect:
serializedVersion: 2
x: 895
y: 718
width: 122
height: 136
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: front_toeA
rect:
serializedVersion: 2
x: 976
y: 2
width: 29
height: 50
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: head
rect:
serializedVersion: 2
x: 204
y: 96
width: 296
height: 260
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: logo
rect:
serializedVersion: 2
x: 2
y: 2
width: 897
height: 92
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: tail01
rect:
serializedVersion: 2
x: 895
y: 563
width: 120
height: 153
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: tail03
rect:
serializedVersion: 2
x: 901
y: 2
width: 73
height: 92
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
outline: []
spritePackingTag:
userData:

View File

@ -1,9 +1,28 @@
fileFormatVersion: 2
guid: 12c126994123f12468cf4c5a2684078a
timeCreated: 1467205225
timeCreated: 1479419653
licenseType: Free
TextureImporter:
fileIDToRecycleName: {}
fileIDToRecycleName:
21300000: L_front_leg
21300002: L_front_thigh
21300004: L_rear_leg
21300006: L_wing04
21300008: L_wing07
21300010: L_wing08
21300012: L_wing09
21300014: R_front_leg
21300016: R_front_thigh
21300018: R_rear_leg
21300020: R_rear_thigh
21300022: R_wing04
21300024: chin
21300026: front_toeB
21300028: rear-toe
21300030: tail02
21300032: tail04
21300034: tail05
21300036: tail06
serializedVersion: 2
mipmaps:
mipMapMode: 0
@ -46,10 +65,259 @@ TextureImporter:
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 5
buildTargetSettings: []
spriteSheet:
sprites: []
serializedVersion: 2
sprites:
- serializedVersion: 2
name: L_front_leg
rect:
serializedVersion: 2
x: 391
y: 287
width: 57
height: 84
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: L_front_thigh
rect:
serializedVersion: 2
x: 446
y: 171
width: 84
height: 72
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: L_rear_leg
rect:
serializedVersion: 2
x: 888
y: 2
width: 132
height: 168
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: L_wing04
rect:
serializedVersion: 2
x: 256
y: 150
width: 188
height: 135
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: L_wing07
rect:
serializedVersion: 2
x: 2
y: 148
width: 159
height: 255
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: L_wing08
rect:
serializedVersion: 2
x: 705
y: 2
width: 181
height: 164
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: L_wing09
rect:
serializedVersion: 2
x: 499
y: 2
width: 204
height: 167
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: R_front_leg
rect:
serializedVersion: 2
x: 273
y: 389
width: 101
height: 89
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: R_front_thigh
rect:
serializedVersion: 2
x: 163
y: 298
width: 108
height: 108
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: R_rear_leg
rect:
serializedVersion: 2
x: 273
y: 287
width: 116
height: 100
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: R_rear_thigh
rect:
serializedVersion: 2
x: 163
y: 148
width: 91
height: 148
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: R_wing04
rect:
serializedVersion: 2
x: 2
y: 2
width: 279
height: 144
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: chin
rect:
serializedVersion: 2
x: 283
y: 2
width: 214
height: 146
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: front_toeB
rect:
serializedVersion: 2
x: 590
y: 171
width: 56
height: 57
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: rear-toe
rect:
serializedVersion: 2
x: 2
y: 405
width: 77
height: 105
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: tail02
rect:
serializedVersion: 2
x: 151
y: 408
width: 120
height: 95
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: tail04
rect:
serializedVersion: 2
x: 532
y: 171
width: 56
height: 71
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: tail05
rect:
serializedVersion: 2
x: 648
y: 171
width: 52
height: 59
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: tail06
rect:
serializedVersion: 2
x: 81
y: 405
width: 68
height: 95
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
outline: []
spritePackingTag:
userData:

View File

@ -15,16 +15,14 @@ Material:
m_SavedProperties:
serializedVersion: 2
m_TexEnvs:
data:
first:
- first:
name: _MainTex
second:
m_Texture: {fileID: 2800000, guid: 6bc52290ef03f2846ba38d67e2823598, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
data:
first:
- first:
name: _Cutoff
second: 0.1
m_Colors: {}
m_Colors: []

View File

@ -15,16 +15,14 @@ Material:
m_SavedProperties:
serializedVersion: 2
m_TexEnvs:
data:
first:
- first:
name: _MainTex
second:
m_Texture: {fileID: 2800000, guid: 12c126994123f12468cf4c5a2684078a, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
data:
first:
- first:
name: _Cutoff
second: 0.1
m_Colors: {}
m_Colors: []

View File

@ -1,6 +1,6 @@
fileFormatVersion: 2
guid: 49441e5a1682e564694545bd9b509785
timeCreated: 1467205225
timeCreated: 1479419653
licenseType: Free
TextureImporter:
fileIDToRecycleName: {}
@ -46,9 +46,11 @@ TextureImporter:
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 5
buildTargetSettings: []
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
spritePackingTag:

View File

@ -15,16 +15,14 @@ Material:
m_SavedProperties:
serializedVersion: 2
m_TexEnvs:
data:
first:
- first:
name: _MainTex
second:
m_Texture: {fileID: 2800000, guid: 49441e5a1682e564694545bd9b509785, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
data:
first:
- first:
name: _Cutoff
second: 0.1
m_Colors: {}
m_Colors: []

View File

@ -1,13 +1,17 @@
fileFormatVersion: 2
guid: ddb89f63d0296cf4f8572b0448bb6b30
timeCreated: 1467205225
timeCreated: 1480096533
licenseType: Free
TextureImporter:
fileIDToRecycleName: {}
fileIDToRecycleName:
21300000: Equipment/shield1
21300002: Equipment/shield2
21300004: Equipment/sword1
21300006: Equipment/sword4
serializedVersion: 2
mipmaps:
mipMapMode: 0
enableMipMap: 0
enableMipMap: 1
linearTexture: 0
correctGamma: 0
fadeOut: 0
@ -46,10 +50,64 @@ TextureImporter:
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaIsTransparency: 0
textureType: 5
spriteTessellationDetail: -1
textureType: 0
buildTargetSettings: []
spriteSheet:
sprites: []
serializedVersion: 2
sprites:
- serializedVersion: 2
name: Equipment/shield1
rect:
serializedVersion: 2
x: 220
y: 24
width: 118
height: 71
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: Equipment/shield2
rect:
serializedVersion: 2
x: 340
y: 24
width: 111
height: 82
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: Equipment/sword1
rect:
serializedVersion: 2
x: 2
y: 95
width: 161
height: 31
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
- serializedVersion: 2
name: Equipment/sword4
rect:
serializedVersion: 2
x: 2
y: 24
width: 216
height: 69
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
tessellationDetail: -1
outline: []
spritePackingTag:
userData:

View File

@ -15,16 +15,14 @@ Material:
m_SavedProperties:
serializedVersion: 2
m_TexEnvs:
data:
first:
- first:
name: _MainTex
second:
m_Texture: {fileID: 2800000, guid: ddb89f63d0296cf4f8572b0448bb6b30, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
data:
first:
- first:
name: _Cutoff
second: 0.1
m_Colors: {}
m_Colors: []

View File

@ -1,6 +1,6 @@
fileFormatVersion: 2
guid: 57b57f94df266f94ea0981915a4472e1
timeCreated: 1467205225
timeCreated: 1479419653
licenseType: Free
TextureImporter:
fileIDToRecycleName: {}
@ -46,9 +46,11 @@ TextureImporter:
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 5
buildTargetSettings: []
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
spritePackingTag:

View File

@ -15,16 +15,14 @@ Material:
m_SavedProperties:
serializedVersion: 2
m_TexEnvs:
data:
first:
- first:
name: _MainTex
second:
m_Texture: {fileID: 2800000, guid: 57b57f94df266f94ea0981915a4472e1, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
data:
first:
- first:
name: _Cutoff
second: 0.1
m_Colors: {}
m_Colors: []

Some files were not shown because too many files have changed in this diff Show More