Jump to content

Speed of randomly animation for sexlab P+


pxd2050

Recommended Posts

Sexlab P+ only get front 128 anims when anims over 128. so I try to edit sslAnimationSlots.psc for random anims.

The loading speed of the animation before modification is 30 seconds (1000 animations), and it takes 50 seconds after modification.

May I ask how to optimize speed?

before:

sslBaseAnimation[] Function _GetAnimationsImpl(int[] aiKeys, String[] asTags)
	Log("Searching for Animation with Keys = " + aiKeys + " | Tags = " + asTags)
	sslBaseAnimation[] ret = new sslBaseAnimation[128]
	int i = 0
	int ii = 0
	While(i < Slotted)
		If(Objects[i])
			sslBaseAnimation Slot = Objects[i] as sslBaseAnimation
			; Log("Validating Animation Nr. " + i + " | Keys = " + Slot.DataKeys() + " | Tags = " + Slot.GetTags())
			If(Slot.Enabled && Slot.MatchKeys(aiKeys) && Slot.MatchTags(asTags))
				ret[ii] = Slot
				If(ii == 127)
					return ret
				EndIf
				ii += 1
			EndIf
		EndIf
		i += 1
	EndWhile
	sslBaseAnimation[] _ret = sslUtility.AnimationArray(ii)
	int j = 0
	While(j < ii)
		_ret[j] = ret[j]
		j += 1
	EndWhile
	return _ret
EndFunction

after:

sslBaseAnimation[] Function _GetAnimationsImpl(int[] aiKeys, String[] asTags)
	Log("Searching for Animation with Keys = " + aiKeys + " | Tags = " + asTags)
	sslBaseAnimation[] ret = new sslBaseAnimation[128]
	Alias[] tempObjects = Objects
	int i = 0
	int ii = 0
	While(i < Slotted)
		int k = Utility.RandomInt(0, Slotted - i)
		If(tempObjects[k])
			sslBaseAnimation Slot = tempObjects[k] as sslBaseAnimation
			; Log("Validating Animation Nr. " + i + " | Keys = " + Slot.DataKeys() + " | Tags = " + Slot.GetTags())
			If(Slot.Enabled && Slot.MatchKeys(aiKeys) && Slot.MatchTags(asTags))
				ret[ii] = Slot
				If(ii == 127)
					return ret
				EndIf
				ii += 1
			EndIf
		EndIf
		tempObjects = RemoveAlias(tempObjects, tempObjects[k])
		i += 1
	EndWhile
	sslBaseAnimation[] _ret = sslUtility.AnimationArray(ii)
	int j = 0
	While(j < ii)
		_ret[j] = ret[j]
		j += 1
	EndWhile
	return _ret
EndFunction
Edited by pxd2050
Link to comment
Share on other sites

I'm sorry, I'm not sure what you're trying to do. Nor am I familiar with the code you're presenting.

 

Animation speed to me indicates how fast the animation plays. A given animation sequence has only a small handful of stages. If you want to control animation speed in those individual stages, there is a far easier way to accomplish it, using the SL Triggers mod and applying the speed-control script (that it provides in its sample scripts) to it on start of said animations, which allows you to then advance, retard, save, or reset the speed for a given stage, which is then stored for future use when that animation is replayed at a later date, using preassigned hotkeys (unfortunately not easily reassignable, since they use keycodes for assignment within the script)

numpad

+ increase speed

- decrease speed

* store current speed for stage

/ reset current speed to default.

 

Afaik, the "native" animation speed control elements in SL are inapplicable to the SE (and afaik AE) environment due to the original DLL being incompatible and not being able to be rewritten (not sure why but whatever - there's discussion out there on the subject if you look around), so instead the above speed control script uses SGTM. Upon exit of the sequence, it also returns the timer to its original state.

Link to comment
Share on other sites

I'm sorry, I'm not sure what you're trying to do. Nor am I familiar with the code you're presenting.

 

Animation speed to me indicates how fast the animation plays. A given animation sequence has only a small handful of stages. If you want to control animation speed in those individual stages, there is a far easier way to accomplish it, using the SL Triggers mod and applying the speed-control script (that it provides in its sample scripts) to it on start of said animations, which allows you to then advance, retard, save, or reset the speed for a given stage, which is then stored for future use when that animation is replayed at a later date, using preassigned hotkeys (unfortunately not easily reassignable, since they use keycodes for assignment within the script)

numpad

+ increase speed

- decrease speed

* store current speed for stage

/ reset current speed to default.

 

Afaik, the "native" animation speed control elements in SL are inapplicable to the SE (and afaik AE) environment due to the original DLL being incompatible and not being able to be rewritten (not sure why but whatever), so instead the above speed control script uses STGM. Upon exit oif the sequence, it also returns the timer to its original state.

thank you for your reply, my english is no good.

I mean anims loading speed (when register too many anims, sexlab secen loading is very slowly). no anima play speed.

Link to comment
Share on other sites

Ah.... Ok, that's why it seemed odd to me. Thanks for the clarification

 

So then my answer is, "not as far as I know".

 

Afaik as long as you're not skirting the limits of animations (ie the raw number of sequences), the number of sequences shouldn't affect general speed of SL. Although during registration, you just have to wait. It parses the entire list of newly added registration requests and handles each in order. But it shouldn't take long to register them, unless you're trying to register several hundred at a time, where it might take several minutes to process.

 

You might wander over to Lover's lab and post within the SL support page, where it's more likely you'd receive an author's notice, or the notice of people more involved with SL than here on nexus.

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...