Home    LittleBigPlanet 2 - 3 - Vita - Karting    LittleBigPlanet 2    [LBP2] Suggestions
#1

Disable autmoatic "refreshing" on Microcips

Archive: 18 posts


God! I was so excited about these microcips. Building heavily complex procedures and then shrinking them to a dot. And the best: So much faster and less complicated than in LBP (1)! Well, sadly not. Once your microcip reaches about 50 wired logic elements and you try to connect another wire, you get a heavy lagg every second, because the engine seems to re-calculate the paths of the all the wires on the chip, so when dropping the cable a fresh, unknoted path can be presented. But, why is this feature in there? Updating something wile it is not even shure what changes will happen makes not much sense runtime-whise.

I could be mistaking on WHAT exaclty causes this laggs (or call it framerate drops) since I have no insight into the engine and can just think what happens in the background, but there is something happening with a frequenci of 1 event per second on the chip, that makes it totaly impossible to work on microchips with a big ammount of logic ellements wired up to each other. The game will totally freeze every second and then run fluently for the next second, giving you this time window to move the wire or place it. After this second the next fullstop will occur.

So if someone from MM happens to see this post, I'd like to konow what causes these laggs.
If it is technically possible to deliver fix within in a patch ( I know that major engine changes can barely be done with a patch) then please do so. My suggestion would be a option to disable this automatic refreshing, since I see a use for it when dealing with "regular", smaller sized microcips.

To all the readers, have you ever encoutered this problem and if so, how did you deal with it?

EDIT:
Picture to show a situation where editing a chip is nearly impossible.
http://i4.lbp.me/img/ft/ed401fe7fbbcd046454b9cc9cb9881511ff5af4b.jpg
(Invetory system with 20 possible Items)

EDIT2:
Helpfull workaround:
Build you Microcip on a pice of material instead of the Microchip itself.
No wirepaths will be calculated on it, resulting in some spaghetti, but without laggs.
When you are done, put the stuff back on the chip.
Not a final sollution, but realy handy IMO



Regards
1st of The5
2011-02-10 16:07:00

Author:
The5
Posts: 51


Maybe break out some stuff into separate microchips and nest those microchips inside the main one...looks like a lot of repeated logic?2011-02-10 16:24:00

Author:
fullofwin
Posts: 1214


@fullofwin
My usual solution is to do so, But then aggian there run a lot of cables into and out of that new chip, just causing similar heavy laggs.
There is no repetition in this as far as I can tell, the 20 bits down there look identic but they all got different inputs.
In this situation I could put each of the 20 parts into a own chip, but this chip would have 4 inputs each, resulting in nearly the same ammount of wires all over the place.
Nesting microchips into each other is helpfull, but not a complete sollution.
2011-02-10 16:55:00

Author:
The5
Posts: 51


I ran into this problem when creating my LED display for my basketball game in the beta. It really slows down your work, especially if you have dozens more connections to make. Indeed it's neccessary for the game engine to check for changed connections and only update the appropriate ones. An oversight like this in such a resource-intensive game is almost shameful.2011-02-10 18:23:00

Author:
Unknown User


I had this happen a lot. I've encountered both this lag and some wires just not appearing altogether.2011-02-10 18:40:00

Author:
Foofles
Posts: 2278


I see you have a couple on that circuit board already, but if you pick up a wire and drop it on the circuit board instead of an input, it creates a 'node' that you can position and rotate that uses the wire as its input and has its own output wire you can pick up and then attach to w/e (even making another node if you want). Chain a few of those together and you can route the wires however you want. From my experience the refresh will mostly not bother wires that utilize nodes, unless there is a significant distance between the node and its destination, so even a handful here and there should help cut back on that lag you describe. It also has the added bonus of being aesthetically pleasing, letting you organize everything the way you want instead of getting those huge, snake-all-the-way-around-the-board-before-reaching-the-destination wires.2011-02-10 20:08:00

Author:
Unknown User


... and some wires just not appearing altogether.
Jeh. Had the same problem once. No wires were drawn on the cip, the lagg however was still presistant.

@Crashdance22
So if this problem was known since the betta, was it reported too? Are there any MM statements about it?

@HUcast
I use nodes now and then when I move parts of the cip onto a other one, to get easy to use connection points between them but usualy for nothing else.
Right now I want to get this cip done and dont want to experiment with what you suggested, so have you tried this yourself on large scale chips?
I realy can't imagine that nodes realy help much, the wires are calculated the same way. Especialy when lots of logic elements and wires are close to each other, realy small curves and corners are calculated. I doubt placing a node in strategic clever positions (to make the wires run straight and long lines as much as possible) will aid the framerate much.
2011-02-10 20:47:00

Author:
The5
Posts: 51


I just found a realy nice workaround!
Build you Microcip on a pice of material instead of the Microchip itself.
No wirepaths will be calculated on it, resulting in some spaghetti, but without laggs.
When you are done, put the stuff back on the chip.
Not a final sollution, but realy handy IMO
2011-02-10 21:05:00

Author:
The5
Posts: 51


@The5
I haven't used lots of nodes on a microchip above roughly 24 logic components no, so I'll concede that it may not effect large scale microchips in the same way. I just know that routed wires have a tendency to stay put more then moving around during the automatic refreshes, unless its a either a really long stretch of wire that other wires cross over or you physically put something in the routed wires way.

I totally understand being cautious about it. Reworking that large of a chip with nodes would take a lot of time. I'll gladly do some more experiments later today when I get home from work though.

*edit* Just read the work-around you posted. Sounds like an interesting idea, though with large scale chips does lag start to happen when you are moving everything over?
2011-02-10 21:09:00

Author:
Unknown User


@HUcast
I Selected all the content of the chip abvove, then the lagging started. I moved everything over to a piece of cardboard, still lagging. As soon as I pressed [X] to put the logics down on the cardboard it gave me one more re-calculatin lagg, then it was over.
I closed the chip and selected "hide outgoing cables" (there was still some logic remaining in it, connected to the stuff I moved out).
I did the rest of work on the cardboard within minutes and no laggs at all.
Then i opened up the chip aggain, selected all the stuff on the cardboard and moved it over to the chip.
When the first logic element touched the chip, the lagg began aggain, but it was only a matter of a few seconds to move the logics to the desired position and hit [X] aggain. After one more recalculation lagg the stuff was over and done and I closed the chip
2011-02-10 21:20:00

Author:
The5
Posts: 51


Sounds good then
Seems your method would be good for chips already in progress. Even if the node routing method works, it would be a royal pain to manually re-route a chip that is already quite extensive.
2011-02-10 21:25:00

Author:
Unknown User


Yes indeed, my chip was already in progress.
I will definately try your rerouting method on a future chip.
2011-02-10 21:46:00

Author:
The5
Posts: 51


There other workarounds:
Microchip wiring happens only in one microchip board at one time
Circuitry seems to be repetitive,try to pack repeating parts of microchips to speperate microchips so you remove those lopped wires from main microchip
If you got circuit that you can divide in modules then place them in sperate microchip too,but your logic seems to connect everything with everything so it wont probably help.
2011-02-10 22:04:00

Author:
Shadowriver
Posts: 3991


Same problem in the beta - was reported, but never fixed. All they need to do is change the wire routing check so it only occurs after you've made the change, not during.

There's another workaround, if you make the circuit board really large, after you place enough components, it gives up trying to route the wires, and uses the wire display method you get when placing components on a normal material.
2011-02-11 06:19:00

Author:
Aya042
Posts: 2870


From the testing I did... you'd have to be incredibly zealous about using the circuit nodes while building your logic on the chips. Pretty much to the point of having it all planned out already. The biggest spots to pay attention to are the areas where logic components are tightly packed and prone to 'be in the way'. And it just gets pretty ridiculous the more components you add. It does stop the lag from happening in the extremes (you'll still eventually get to the point that so many wires are on the screen that it has to work harder to render everything), but I'd say it's almost not worth it. Keeping up with that many nodes on that large of a chip while you are constructing it eats a lot of time out of creating the actual logic. And if the chip is already in progress... just forget about nodes completely.

Nodes work pretty well for smaller chips though, somewhere in the sub 20 component range (30 would be pushing it imo), where dropping some cleverly placed ones here and there takes almost no effort/time. But if you are going for much larger it seems The5's method of making it on a piece of material and then transferring it to the chip would be better. Aya's method should work as well.
2011-02-11 07:01:00

Author:
Unknown User


There other workarounds:
Microchip wiring happens only in one microchip board at one time
I can't work on multiple chips simotanously can I or how do you mean that? I got brtothers though (as my name suggests ) so maybe when they work on a smaller chip, I can continue on the bigger one? I gotta test this.



Circuitry seems to be repetitive,try to pack repeating parts of microchips to speperate microchips so you remove those lopped wires from main microchip.
If you got circuit that you can divide in modules then place them in sperate microchip too,but your logic seems to connect everything with everything so it wont probably help.

Yes, that was my first thought on this particular chip too, placing the 20 bits consitiong of 4 gates an a spawner onto their won chips. That would save me 2 wires per junk. But I already placed most of the mand connected some cables whne thinking about that and then the laggs were already there. Moving everything on chips whiel suffering the laggs seemded like a waste of time, compared to jist finishing that thing with the laggs presistant.
This method could help though when you "plan" you chips a little beforehead.


Same problem in the beta - was reported, but never fixed. All they need to do is change the wire routing check so it only occurs after you've made the change, not during.
If they have not ficed it, the problem might realy be to deep in the engine. Somewhere inside the regular recalculation routines and thus barely fixable, who knows



There's another workaround, if you make the circuit board really large, after you place enough components, it gives up trying to route the wires, and uses the wire display method you get when placing components on a normal material.
Sounds usefull. Usualy I got multiple chips open aside to each other, then one "realy big" chip might take up the whole screenspace or hide the other, thus I stil prefear my carboard method
Thanks for that information neverless

HUcast:
Great job testing it, thanks
Mostly I comment every larger bit of my chips to make clear what it does and where it gets it's signals from, so I don't care how strange the wires are put and thus don't use nodes to much. For smaller chips however, where I usualy don't comment, some nodes might be helpfull. The last thought on this would be, wether nodes eat up thermo space. Shure not enough to make it worth thinking about.
2011-02-11 08:54:00

Author:
The5
Posts: 51


A major problem for me as well. As I use massive amounts of logic now for my lighting, the current wiring system has at times lagged me out, crashed the PS3, and has caused large losses of work.

The fix should've been added in the Beta, not now when everyone's still getting used to
the new logic system.
2011-02-12 04:34:00

Author:
Dylanlip
Posts: 18


or how do you mean that?

Sorry maybe i describe it wrong, only one circuit board have wired process at one time. So if you got segment wiring to sperate chips it will reduce number of wires in root chip and as only one chip is being precess it will reduce the lag. But it wont work with every circuit, for example you curcit connects practically everything to each module so you can only cut those looping once on those repeating once
2011-02-12 12:10:00

Author:
Shadowriver
Posts: 3991


LBPCentral Archive Statistics
Posts: 1077139    Threads: 69970    Members: 9661    Archive-Date: 2019-01-19

Datenschutz
Aus dem Archiv wurden alle persönlichen Daten wie Name, Anschrift, Email etc. - aber auch sämtliche Inhalte wie z.B. persönliche Nachrichten - entfernt.
Die Nutzung dieser Webseite erfolgt ohne Speicherung personenbezogener Daten. Es werden keinerlei Cookies, Logs, 3rd-Party-Plugins etc. verwendet.