pxd2050 Posted April 18, 2023 Share Posted April 18, 2023 (edited) 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 April 18, 2023 by pxd2050 Link to comment Share on other sites More sharing options...
anjenthedog Posted April 18, 2023 Share Posted April 18, 2023 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 More sharing options...
pxd2050 Posted April 18, 2023 Author Share Posted April 18, 2023 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 More sharing options...
anjenthedog Posted April 18, 2023 Share Posted April 18, 2023 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 More sharing options...
Recommended Posts