def as_particle_collection(subject, prefix="particleassets"):
    """
    Particle assets cannot have hide_render=True or they will be invisible,
    yet this is the default behavior for most asset collections
    """

    if subject.name.startswith(prefix):
        return subject

    subject.name = prefix + ":" + subject.name.split(":")[-1]
    for o in subject.objects:
        o.location.z -= 100
    subject.hide_viewport = True
    subject.hide_render = False

    return subject

    Particle assets cannot have hide_render=True or they will be invisible,
    yet this is the default behavior for most asset collections
    
infinigen/core/placement/particles.py