Перейти к содержимому
Mineforgian

OmniGen

Eliminate server slowdowns thanks to OmniGen's optimized generation and its multiple features.

Загрузки
512
Подписчики
9
Обновлён
22 августа 2026 г.
Лицензия
All-Rights-Reserved

Опубликован 5 мая 2026 г.


FR


🌀 OmniGen — Voyez loin. Vraiment loin.

Un horizon de plusieurs milliers de blocs, une carte du monde, et un serveur qui respire.

Minecraft s'arrête à quelques centaines de blocs. OmniGen dessine le terrain bien au-delà — montagnes, océans, forêts et constructions — sans charger un seul chunk supplémentaire côté serveur.

Pas de génération parallèle, pas de monde dupliqué : OmniGen affiche votre monde réel, y compris ce que les joueurs ont construit.


🏔️ Terrain lointain

Un rendu voxel du monde jusqu'à plusieurs milliers de blocs, calculé à partir des données réelles du serveur — vos bâtiments, vos routes et vos terraformations apparaissent à l'horizon, pas seulement le relief brut.

  • Paliers de détail progressifs — la précision décroît doucement avec la distance, sans marches visibles
  • Brouillard calibré sur l'horizon réellement dessiné : le terrain se fond dans le ciel au lieu de s'arrêter net
  • Distance automatique — le mod cherche seul la portée que votre machine tient, la jauge devenant un plafond plutôt qu'un pari
  • Cycle jour/nuit respecté, y compris sous shaders

🗺️ Minimap intégrée

Une carte du terrain en haut à droite, alimentée par les données que le mod possède déjà — donc sans aucun coût de génération supplémentaire.

Un pixel par chunk, nord en haut, avec un ombrage du relief. Elle utilise exactement les mêmes couleurs que l'horizon lointain : ce que vous voyez sur la carte est ce que vous verrez en tournant la tête.

Activable et désactivable dans les options — si vous préférez une autre minimap, coupez la nôtre, le choix est mémorisé.


⚙️ Prégénération de fond

OmniGen explore et prépare votre monde pendant que vous jouez, en spirale depuis le spawn, régulé par la charge réelle du serveur : il travaille quand le serveur a du mou, il se tait quand il rame.

Résultat : un horizon qui se remplit tout seul au fil des sessions, sans commande à lancer ni serveur à mettre à l'arrêt.


🫀 Soupape de pression — la puissance des joueurs, en renfort

Le serveur génère son monde lui-même, normalement. Mais lorsqu'il sature — pic d'exploration, plusieurs joueurs qui partent dans des directions opposées — OmniGen peut confier une partie du calcul aux machines des joueurs connectés.

  • Déclenché uniquement sous surcharge mesurée, jamais en fonctionnement normal
  • Le serveur reste la source de vérité : ce que renvoie un client est vérifié avant d'être accepté
  • Repli automatique et silencieux en génération vanilla si un client tarde, échoue ou triche

C'est une soupape, pas un moteur : elle sert quand la marmite chauffe, et reste invisible le reste du temps.


🔧 Compatibilité

NeoForge 1.21.1 — requis côté client ET serveur

  • Mods de génération de terrain (Terralith, Biomes O' Plenty, Tectonic…) : pris en charge. OmniGen compare son résultat à celui du serveur et, en cas de désaccord, repasse la dimension en génération serveur pure — mieux vaut renoncer à un gain de performance que de livrer un terrain faux.
  • Sodium et Iris : compatibles, shaders inclus.
  • Sinytra Connector : fonctionne.

📊 Le mod se mesure lui-même

OmniGen écrit dans le journal ce qu'il fait réellement : temps de calcul serveur, mémoire suivie, décisions du régulateur de distance, envois vers la carte graphique.

Ce n'est pas de la décoration : si vous rencontrez un problème, votre fichier de log contiendra déjà les chiffres nécessaires pour le comprendre — sans avoir à reproduire l'incident.


⚠️ Bêta — ce qu'il faut savoir

OmniGen est en bêta active et progresse vite. Le terrain lointain, la minimap et la prégénération sont fonctionnels et utilisés quotidiennement, mais des défauts visuels subsistent à très grande distance, et les performances dépendent beaucoup de votre machine.

Chaque option importante est désactivable individuellement, précisément pour que vous puissiez isoler un problème au lieu de désinstaller le mod.

Licence MIT — libre d'utilisation, y compris en modpack.


🐛 Signaler un bug

Un formulaire dédié collecte automatiquement votre configuration et pose les questions qui font gagner des journées entières de recherche. Tout y est facultatif, mais chaque champ rempli compte.

👾 Discord : https://discord.gg/F8T2UBFzYz


EN


🌀 OmniGen — See far. Really far.

A horizon thousands of blocks deep, a world map, and a server that breathes.

Minecraft stops a few hundred blocks out. OmniGen draws the terrain far beyond — mountains, oceans, forests and builds — without loading a single extra chunk on the server.

No parallel generation, no duplicated world: OmniGen displays your actual world, including everything your players have built.


🏔️ Distant terrain

A voxel rendering of the world up to several thousand blocks away, built from the server's real data — your buildings, roads and terraforming appear on the horizon, not just raw landscape.

  • Progressive detail tiers — precision fades smoothly with distance, without visible steps
  • Fog calibrated on the horizon actually being drawn: terrain blends into the sky instead of stopping dead
  • Automatic distance — the mod finds the range your machine can hold on its own; the slider becomes a ceiling rather than a guess
  • Day/night cycle respected, shaders included

🗺️ Built-in minimap

A terrain map in the top-right corner, fed by data the mod already holds — so it costs no extra generation at all.

One pixel per chunk, north up, with relief shading. It uses exactly the same colours as the distant horizon: what you see on the map is what you'll see when you turn your head.

Can be toggled in the options — if you prefer another minimap, turn ours off and the choice is remembered.


⚙️ Background pregeneration

OmniGen explores and prepares your world while you play, spiralling out from spawn and regulated by the server's real load: it works when the server has slack, and goes quiet when it struggles.

The result is a horizon that fills itself in over successive sessions — no command to run, no server downtime.


🫀 Pressure valve — player CPU as backup

The server generates its world on its own, normally. But when it saturates — an exploration spike, several players heading in opposite directions — OmniGen can hand part of the computation to connected players' machines.

  • Triggered only under measured overload, never during normal operation
  • The server remains the source of truth: whatever a client returns is verified before being accepted
  • Automatic, silent fallback to vanilla generation if a client is slow, fails, or cheats

It's a valve, not an engine: it opens when the pot boils over, and stays invisible the rest of the time.


🔧 Compatibility

NeoForge 1.21.1 — required on BOTH client and server

  • World generation mods (Terralith, Biomes O' Plenty, Tectonic…): supported. OmniGen compares its own result against the server's and, on any mismatch, switches that dimension back to pure server generation — better to give up a performance gain than to serve wrong terrain.
  • Sodium and Iris: compatible, shaders included.
  • Sinytra Connector: works.

📊 The mod measures itself

OmniGen logs what it actually does: server tick cost, tracked memory, distance-regulator decisions, GPU uploads.

This isn't decoration: if you hit a problem, your log file will already contain the numbers needed to understand it — no need to reproduce the incident.


⚠️ Beta — what to expect

OmniGen is in active beta and moving fast. Distant terrain, the minimap and pregeneration are functional and used daily, but visual glitches remain at very long range, and performance depends heavily on your machine.

Every significant feature can be turned off individually, specifically so you can isolate a problem instead of uninstalling the mod.

MIT licence — free to use, modpacks included.


🐛 Reporting a bug

A dedicated form collects your configuration automatically and asks the questions that save entire days of investigation. Everything is optional, but every field filled in counts.

👾 Discord: https://discord.gg/F8T2UBFzYz

Ченджлог

0.3.37.20-BETAБета1.21.1 · 22 августа 2026 г.

OmniGen 0.3.37.20-BETA

La version où le terrain lointain devient réellement jouable.

Dix images par seconde avant, quatre-vingts après, au même endroit. Un horizon qui plafonnait à 64 chunks et qui en atteint maintenant plus de 500. Un cache qui se corrompait silencieusement depuis des semaines, et qu'on a fini par prendre la main dans le sac.

Tout ce qui suit a été mesuré en jeu, pas estimé.


🚀 Performances : 10 → 80 images par seconde

Mesuré au même endroit, sans bouger. Et surtout : entre 60 et 80 stables, que l'on regarde l'océan lointain, une forêt ou des îles. Auparavant, tourner la tête vers du terrain boisé suffisait à diviser les images par seconde par deux.

Trois réglages, désormais activés par défaut :

  • Lointain allégé — le détail décroît deux fois plus vite avec la distance
  • Regroupement agressif — les blocs de 32×32 chunks prennent le relais dès 48 chunks au lieu de 96
  • Reconstruction paresseuse — le terrain lointain se reconstruit moins souvent

Tous restent désactivables individuellement dans les options avancées.

Ce qui coûtait si cher

Le détail décroissait avec la distance, mais lentement : détail maximal jusqu'à 20 chunks, puis un cran tous les 36. Conséquence peu intuitive — à 64 chunks, le terrain était encore rendu presque bloc par bloc, soit 128 × 128 chunks de voxels quasiment pleine résolution envoyés à votre carte graphique à chaque image. Le détail décroît maintenant deux fois plus vite. Les vingt premiers chunks autour de vous ne changent pas d'un pixel ; c'est l'horizon qui devient plus grossier.

Ce réglage avait été assoupli fin juillet, avec la note « coût assumé, on a la marge ». La marge venait d'une carte bien moins remplie. Un million et demi de chunks plus tard, elle n'existait plus — mais le réglage, lui, était resté.

Et un emballement qui s'auto-alimentait

Un régulateur interne augmentait le débit d'envoi vers la carte graphique quand les images ralentissaient. L'intention était bonne pour le lancement des calculs, qui ne coûte rien. Mais la même règle s'appliquait aux envois, qui se paient exactement là où ça ralentit : image lente → on envoie quatre fois plus → image encore plus lente. Le remède était indexé sur le symptôme. Il est désormais inversé : plus l'image est lente, moins on envoie.

Effet direct : à très grande distance d'affichage, le jeu reste jouable pendant que l'horizon se construit, au lieu de s'effondrer à quelques images par seconde.


💾 Le cache du terrain est refait de fond en comble

C'est le changement le plus profond de cette version, et il corrige un défaut qui a coûté des semaines sans jamais être vu.

Le cache était un unique fichier compressé lu d'un bout à l'autre. Trois conséquences, toutes structurelles :

  • 34 secondes de chargement au démarrage. Pour connaître le terrain sous vos pieds, il fallait décompresser tout le reste du monde. Rien ne s'affichait avant la fin.
  • Un octet abîmé faisait perdre tout ce qui suivait. C'est ce qui arrivait : le fichier se corrompait silencieusement, le jeu repartait avec un morceau arbitraire du monde, et le terrain apparaissait rayé — un défaut longtemps cherché dans l'affichage alors qu'il était sur le disque.
  • Le fichier entier était réécrit toutes les deux minutes pour y ajouter quelques milliers de chunks. C'est ce volume qui rendait deux sauvegardes simultanées capables de se corrompre l'une l'autre.

Le nouveau format est indexé : chaque chunk se lit et s'écrit indépendamment.

  • L'horizon proche s'affiche en deux secondes au lieu de trente-quatre, et le reste se charge pendant que vous jouez. Le terrain est relu du plus proche au plus loin, dans l'ordre où il vous sert.
  • Une entrée abîmée ne coûte que son chunk. Le reste demeure lisible.
  • On n'écrit plus que ce qui est neuf, au moment où il arrive.

Reprise automatique. Votre cache existant est converti au premier lancement, une seule fois. Sur un monde très exploré, comptez deux à trois minutes pendant lesquelles le terrain lointain n'apparaît pas — c'est normal, et ça n'arrivera plus jamais ensuite. L'ancien fichier est conservé sous voxel.bin.migrated : gardez-le un jour ou deux, puis supprimez-le.

⚠️ Le cache prend plus de place qu'avant. Compresser chaque chunk séparément coûte forcément plus que compresser tout le fichier d'un bloc — c'est précisément ce qui permet d'en lire un sans lire les autres. Sur un monde d'un million et demi de chunks, cela représente quelques centaines de mégaoctets supplémentaires. Le chargement instantané et la résistance à la corruption se paient là.


🗺️ Le terrain lointain se remplit enfin — trois blocages levés

Trois mécanismes empêchaient la carte de se compléter, chacun invisible seul.

Le scanner de carte recommençait à zéro dès que vous marchiez. Il balaie le monde en anneaux depuis vous, et se recentrait — en repartant du premier anneau — dès que vous vous éloigniez de 64 chunks, soit environ une minute de marche. Sur un monde joué pendant des semaines, il en était encore à l'anneau 6. Il ne recentre désormais que si vous sortez réellement de la zone déjà balayée.

Le serveur ignorait tout ce qui est à plus de 256 chunks. Au-delà, un morceau de terrain manquant n'était jamais mis en file : le serveur attendait que vous vous en approchiez. Cohérent quand l'horizon plafonnait à 64 chunks, absurde depuis qu'il en atteint plus de 500. Porté à 512.

Et le serveur remplissait le spawn pendant que vous jouiez ailleurs. La prégénération globale reprend maintenant uniquement quand plus personne n'est connecté — un serveur passe l'essentiel de son temps sans joueurs, c'est là qu'il faut travailler. Le rayon prégénéré autour de vous passe par ailleurs de 96 à 256 chunks.


🌅 Le terrain apparaît en douceur

Le terrain lointain ne surgit plus d'un bloc : il remonte à sa place en sept dixièmes de seconde. Combiné au remplissage en cercles concentriques depuis votre position — au lieu de bandes qui balayaient l'écran — le paysage se construit autour de vous plutôt que par plaques.

L'effet ne repose sur aucun shader : il fonctionne donc sous n'importe quel shaderpack, contrairement au flash blanc de l'ancienne transition, qui n'existait pas sous Iris.

Désactivable : « Apparition en douceur » dans les options avancées.


🧭 La carte

La grande carte se met à jour toute seule. Elle était figée entre deux actions ; elle vit maintenant comme la minimap. La cadence s'ajuste d'elle-même à la taille de votre écran et à l'échelle : le calcul ne prend jamais plus de la moitié du temps disponible, quelle que soit votre configuration.

Une animation d'ouverture. Appuyez sur M : la minimap quitte son coin, glisse vers le centre, puis s'agrandit jusqu'à remplir l'écran. Purement esthétique — mais elle dit sans un mot que les deux cartes sont le même objet vu de deux manières. Un clic ou une touche l'interrompt si vous êtes pressé.

Le fond ne tranche plus. Les zones non explorées et le pourtour de l'image partagent enfin la même teinte : deux notions qui n'avaient aucune raison de se distinguer à l'œil.


🧠 Correctifs

L'inventaire renvoyé en boucle. Toutes les trente secondes, le client reconstruisait l'inventaire complet de ce qu'il possède — plus d'un million et demi de chunks parcourus, une table de 24 000 régions rebâtie de zéro — sur le fil qui dessine vos images, pour renvoyer au serveur un inventaire rigoureusement identique au précédent. Deux à trois gigaoctets de déchets à ramasser toutes les trente secondes, pour redire ce qui avait déjà été dit. Désormais : rien n'est envoyé si rien n'a changé, et le calcul a quitté le fil de rendu.

Des bandes entières de terrain qui n'apparaissaient pas. Le rendu cédait la place aux grands blocs regroupés en supposant qu'ils étaient prêts — sans vérifier. Entre le moment où il cédait et celui où la relève arrivait, personne ne dessinait. Le terrain reste maintenant à l'écran tant que son remplaçant n'existe pas réellement.

Les réglages avancés sont enfin mémorisés. Les vingt-cinq interrupteurs revenaient à leur valeur par défaut à chaque lancement du jeu. Ils sont désormais écrits dans la configuration, sous des noms lisibles.


📊 Pour les curieux : le journal mesure ce qu'il fait

Rien de visible en jeu. Toutes les trente secondes, le journal indique en moyenne par image : combien de dessins pour les chunks proches, combien pour les blocs regroupés, combien pour les grands blocs, et combien d'envois vers la carte graphique. La carte publie de son côté le taux de chunks réellement disponibles.

Si vous rencontrez une chute d'images par seconde, ces relevés disent ça se passe. Ce sont eux qui ont permis de trouver la plupart des correctifs de cette version — et notamment de cesser d'accuser l'affichage d'un défaut qui était sur le disque.


🐛 Signaler un problème

Le formulaire de retour collecte votre configuration et pose les questions qui font gagner du temps. Tout y est facultatif, mais chaque champ rempli peut représenter des jours de recherche en moins.

0.3.37.19-BETAБета1.21.1 · 21 августа 2026 г.

OmniGen 0.3.37.19-BETA

🕳️ Le défaut le plus visible du mod est corrigé : le terrain manquant sous les îles flottantes

Depuis des semaines, sous une île flottante, l'océan et le sol n'apparaissaient pas dans l'horizon lointain : un trou dans le paysage, exactement à l'aplomb de ce qui flotte. Le défaut a résisté à sept correctifs successifs — parce qu'ils portaient tous sur l'affichage, alors que la cause était dans la capture.

Pour rester léger, OmniGen ne lit qu'une « coquille » de 40 blocs sous le sommet de chaque colonne : le reste est de la pierre invisible, inutile à stocker. Mais sous une île flottante, ce sommet, c'est l'île. Une île à y=200 faisait lire 160→200 — et l'océan à y=63 n'était jamais lu. On cherchait pourquoi une surface ne se dessinait pas, alors qu'elle n'avait jamais été enregistrée.

Le mod lit désormais une seconde fenêtre, sous le vide, quand il en détecte un : le terrain caché est capturé comme n'importe quel autre. La coquille garde tout son intérêt ailleurs.

Trois défauts distincts se cachaient derrière le même symptôme, et il a fallu les trois :

  • la coquille ne descendait pas jusqu'au terrain réel ;
  • le test qui décidait d'ouvrir la seconde fenêtre ne lisait qu'un seul bloc, juste sous la coquille. Il fonctionnait pour les petites îles, et échouait pour toutes celles plus épaisses que 40 blocs — sous lesquelles ce bloc est de la roche, pas du vide. Le mod sonde maintenant toute la hauteur qui sépare la coquille de la mer ;
  • enfin, quand une colonne contenait trop de tranches, seules les douze plus hautes étaient conservées — c'est-à-dire l'île, et jamais le terrain qu'on venait à peine de lire. La surface du sol caché est désormais protégée de cet élagage.

🔧 Et surtout : les mondes déjà explorés sont réparés

Un correctif de capture ne vaut que pour ce qui reste à capturer. Les mondes déjà parcourus — donc ceux de tous ceux qui utilisent déjà le mod — auraient gardé leurs trous pour toujours.

Au démarrage, le serveur relit ses données enregistrées et repère les chunks incomplets à leur signature : des colonnes dont la matière la plus basse flotte loin au-dessus du niveau de la mer, ce qui n'arrive jamais sur du terrain ordinaire. Ces chunks sont marqués pour être recapturés, progressivement, sans aucune action de votre part.

Le balayage tourne en tâche de fond, à débit strictement borné, et ne se déclenche qu'une seule fois par monde. Il est aussi plafonné : un chunk en attente de recapture est un trou de plus à l'écran, donc mieux vaut réparer par vagues que tout effacer d'un coup.

⚠️ Honnêtement : cette détection ne peut pas distinguer avec certitude un chunk mutilé d'un authentique sommet de montagne très élevé — la donnée enregistrée ne dit nulle part ce qu'il y avait sous la coquille. Quelques sommets seront donc recapturés pour rien. C'est un coût ponctuel, payé une fois, et de très loin préférable à un paysage troué.


🗺️ Nouveauté : la carte en grand

La minimap de la 0.3.37.18 avait un successeur prévu. Le voici : touche M ouvre la carte en plein écran.

  • glisser à la souris pour se déplacer
  • molette pour zoomer, de 1 à 16 chunks par pixel — de la parcelle au continent
  • R pour revenir sur soi, Échap pour fermer
  • coordonnées en blocs et échelle affichées en permanence

Elle est aussi accessible par un bouton dans les options d'OmniGen, et utilise exactement le même moteur de rendu que la minimap : ce que montre l'une, l'autre le montre aussi. Deux implémentations d'une même carte finissent toujours par diverger, et le jour où l'une afficherait faux, on ne saurait plus laquelle croire.

Le déplacement est instantané : pendant le glissement, l'image est décalée plutôt que recalculée — c'est ce que fait toute carte, on tire le papier, on ne le redessine pas à chaque centimètre. Le calcul n'a lieu qu'au relâchement, et déborde de l'écran pour qu'un geste ample n'expose aucun bord.

Le monde continue de tourner pendant que la carte est ouverte : ce n'est pas un écran de pause.

Si vous utilisez déjà Xaero ou JourneyMap, la touche M est partagée — elle se réassigne dans les options de commandes de Minecraft, rubrique OmniGen.


🐛 Signaler un problème

Le formulaire de retour collecte votre configuration et pose les questions qui font gagner du temps. Tout y est facultatif, mais chaque champ rempli peut représenter des jours de recherche en moins.

0.3.37.18-BETAБета1.21.1 · 20 августа 2026 г.

OmniGen 0.3.37.18-BETA

🗺️ Nouveauté : la minimap

Une carte du terrain en haut à droite de l'écran, alimentée par les données que le mod possède déjà. Un pixel = un chunk, nord en haut, avec un ombrage du relief pour qu'on reconnaisse un paysage plutôt qu'une nappe de couleur. Elle utilise exactement les mêmes couleurs que l'horizon lointain : ce que vous voyez sur la carte est ce que vous verrez en tournant la tête.

Activée par défaut, et désactivable dans les options d'OmniGen (à côté du compteur de FPS). Le choix est mémorisé : si vous préférez une autre minimap, coupez-la une fois et elle ne reviendra pas.


⚡ Performances : le défaut qui coûtait le plus cher

Un profilage a montré que 16,7 % du temps de rendu partait dans des recherches de table de hachage. La cause tenait en une ligne : la manière de calculer la clé d'un chunk faisait atterrir tous les chunks d'une même diagonale au même endroit de la table. Sur une carte d'un million et demi de chunks, cela revenait à ranger 1,5 million d'entrées dans 2 048 cases — chaque consultation devait alors parcourir un arbre de plusieurs centaines d'éléments, seize fois par image.

Après correction, ce coût tombe à 2,3 %. Un profil de contrôle le confirme : la fonction la plus lourde a purement disparu du classement.

Effet le plus net : le jeu ne se dégrade plus au fil de la session. L'ancien coût grandissait avec le nombre de chunks en mémoire — plus vous jouiez longtemps, plus chaque recherche devenait lente. Ce n'était donc pas la distance d'affichage qui pesait, c'était la durée de jeu.


🔁 Correction : le terrain qui disparaissait et réapparaissait

Certains joueurs voyaient une zone lointaine s'effacer puis revenir, environ toutes les trente secondes.

La cause : le régulateur de distance automatique oscillait. Il réduisait la distance de 15 %, la remontait de 10 %, et recommençait toutes les trois secondes — un aller-retour complet prenant vingt à quarante secondes. À chaque réduction, l'anneau extérieur sortait du rayon d'affichage ; à chaque remontée, il revenait.

Pire : le rayon de libération de mémoire suivait cette valeur mouvante. Une baisse d'images passagère ne masquait donc pas le terrain lointain, elle le supprimait — et la remontée retrouvait un vide qu'elle avait elle-même créé, ce qui déclenchait une nouvelle réduction. La boucle s'alimentait toute seule.

Quatre verrous ont été posés, réunis sous l'option Distance stable (activée) :

  • une marge de tolérance à l'affichage : le rayon décide de ce qu'on fabrique, plus de ce qu'on efface
  • la libération de mémoire suit désormais votre réglage, pas la valeur du moment
  • après chaque augmentation, un délai laisse le terrain neuf arriver avant tout nouveau jugement
  • le plancher du régulateur ne peut plus dépasser votre propre réglage (une distance basse était ignorée)

Le régulateur écrit maintenant chacune de ses décisions dans le journal.


🧠 Serveur : mémoire

⚠️ Cette version ne garantit pas la disparition des problèmes de mémoire signalés. Elle supprime un gaspillage réel et mesuré, mais l'ampleur du gain dépend beaucoup de la façon dont votre serveur est utilisé. Les mesures ci-dessous viennent d'un serveur de test, pas du vôtre.

Ce qui a changé :

  • un cache serveur conservait 800 octets par chunk, indéfiniment, pour répondre à une simple question par oui ou non. Ces données étaient envoyées aux clients puis plus jamais relues. Le cache est devenu une simple liste de repères : seize fois plus léger, comportement identique.
  • le même défaut de hachage que côté client s'appliquait au serveur. Il ne coûtait pas que du temps : les tables dégénérées y consomment aussi davantage de mémoire.
  • une structure interne ajoutée récemment grandissait sans limite avec la durée de jeu. Elle est maintenant bornée et nettoyée périodiquement.

Nouveau : le serveur rend compte de lui-même. Toutes les cinq minutes, une ligne indique la mémoire utilisée et le nombre d'éléments suivis par OmniGen, avec une alerte au-delà de 85 % du tas. Si vous rencontrez une saturation, votre journal contiendra désormais les chiffres nécessaires — sans avoir à refaire l'incident.


🐌 Nouvelle option : reconstruction paresseuse (désactivée par défaut)

Le terrain très lointain se reconstruisait aussi souvent que celui sous vos pieds, pour des changements invisibles à cette distance. Cette option étire ce délai avec l'éloignement — le proche reste réactif, le lointain se regroupe. Sur les mesures de test, cela divise le nombre d'envois vers la carte graphique par 2 à 4 selon la distance d'affichage.

Elle vise les à-coups, pas la moyenne d'images par seconde. À essayer si votre jeu est globalement fluide mais entrecoupé de saccades.

Un compteur d'envois est écrit dans le journal toutes les trente secondes, option activée ou non, pour que vous puissiez comparer vous-même.


🎨 Correctifs divers

  • L'eau s'affichait en gris sur la minimap. La texture d'eau de Minecraft est en niveaux de gris — tout son bleu vient d'une teinte appliquée au rendu, qu'un fluide ne permettait pas de retrouver.
  • Le brouillard du terrain lointain ne revenait pas correctement à son état normal lorsque deux couches de rendu se superposaient, ce qui pouvait assombrir excessivement la scène de nuit.
  • Le serveur ne redemande plus indéfiniment un chunk que le client vient d'écarter.
  • L'écran des options avancées se dispose désormais selon la taille de votre interface. Avec vingt et une bascules, la grille figée à deux colonnes pouvait faire sortir la première rangée hors de l'écran aux grandes échelles d'affichage — des réglages étaient présents mais invisibles.

🐛 Signaler un problème

Le formulaire de retour a été enrichi : il collecte désormais votre configuration automatiquement et pose les questions qui font vraiment gagner du temps — notamment avez-vous testé avec OmniGen seul ?, qui permet à elle seule de distinguer un défaut du mod d'un conflit entre mods.

Tout y est facultatif, mais chaque champ rempli peut représenter des jours de recherche en moins.


Merci à KorinMC pour le premier signalement extérieur du projet. Il a mis au jour un problème qu'un serveur de développement, redémarré sans cesse et généreusement doté en mémoire, ne pouvait structurellement pas révéler.

0.3.37.17-BETAБета1.21.1 · 2 августа 2026 г.

OmniGen 0.3.37.17

Une version de performances et de correctifs visuels. Le terrain lointain est nettement plus fluide, et plusieurs défauts d'affichage tenaces sont enfin réglés — dont les forêts qui s'affichaient en bois.


Performances

Le rendu du terrain lointain a été profondément optimisé.

Le mod reconfigurait entièrement la carte graphique pour chaque morceau de terrain dessiné. Sur un horizon qui en compte des centaines, l'essentiel du temps ne servait plus à dessiner mais à préparer. Le shader n'est désormais appliqué qu'une fois par lot.

Mesuré sur une même scène, avant et après :

avant après
durée d'image médiane 3,7 ms 1,5 ms
pire image 146 ms 22 ms

Concrètement : la moyenne double et les à-coups disparaissent. C'est cette dernière ligne qui compte — une image à 146 ms, c'est un blocage que l'œil perçoit.


Correctifs d'affichage

Les forêts s'affichaient en bois. Certains feuillages moddés — les séquoias de Biomes O' Plenty en particulier — n'étaient jamais enregistrés dans le terrain lointain. On voyait donc les troncs et les branches, sans une feuille : des arbres nus, pris pour des colonnes de planches. La capture ne dépend plus d'une liste de blocs et reconnaît tous les feuillages, moddés compris.

Si vos forêts lointaines sont encore en bois après la mise à jour, c'est que votre serveur les a enregistrées avant le correctif. Supprimez le dossier omnigen_voxelstore du monde, serveur arrêté : il se remplira de nouveau, correctement.

Le feuillage prenait la couleur du biome où vous vous trouviez. Toutes les feuilles de l'horizon partageaient une seule teinte, prise sous vos pieds — debout dans des badlands, les forêts lointaines viraient au brun. Elles suivent maintenant le climat du terrain qu'elles occupent.

Trou sous les îles flottantes. Vues de dessous, elles n'étaient pas fermées. Le volume est désormais clos sur son épaisseur réelle, et non à une profondeur fixe.

Terrain lointain trop lumineux la nuit sous shaders. Il s'assombrit maintenant avec le reste du monde. Correctif partiel : le terrain lointain partage encore une seule valeur de lumière.


Stabilité

Perte possible du cache d'affichage lointain. Se déconnecter pendant que le cache se rechargeait écrasait le fichier complet par la portion déjà lue — silencieusement, et sans retour possible. La sauvegarde attend désormais la fin du chargement.

Régulation serveur. Le garde-fou censé mettre en pause les tâches de fond ne se déclenchait qu'après la chute de TPS, jamais avant : il lisait l'intervalle entre deux ticks, qui vaut 50 ms tant que le serveur tient la cadence, quelle que soit sa charge. Il lit maintenant le temps de calcul réel. Le rapport de diagnostic affiche également la charge et la marge restante.


Outils (options avancées)

Un menu Options avancées enrichi, accessible en jeu, qui sert autant au diagnostic qu'à dépanner : chaque mécanisme du terrain lointain a son interrupteur, avec une ligne d'explication.

Audit des textures — vérifie chaque type de bloc présent dans le terrain lointain : texture résolue, texture cohérente avec le bloc, teinte appliquée, identifiant valide. Un rapport est écrit dans omnigen/diag/. C'est cet outil qui a permis de nommer le défaut des séquoias.

Diagnostic — écrit sur disque le contenu réel du terrain lointain en mémoire, avec la table complète des blocs.

Système hybride (expérimental, désactivé) — convertit le terrain lointain peint en terrain texturé. Très coûteux en l'état ; sera réactivé quand la reconstruction par région sera incrémentale.


Compatibilité

Minecraft 1.21.1 · NeoForge · compatible Iris, Sodium, Biomes O' Plenty, Terralith. Aucune action requise à la mise à jour, sauf pour les mondes dont les forêts étaient déjà enregistrées en bois (voir la note plus haut).

0.3.37.16-BETAБета1.21.1 · 29 июля 2026 г.

OmniGen 0.3.37.16-BETA — Changelog

NeoForge 1.21.1 — La version de la stabilité. Trois causes distinctes d'effondrement des performances ont été identifiées et corrigées, et le remplissage automatique du terrain lointain fonctionne enfin — il ne fonctionnait tout simplement pas avant.


Performances : de 22 à 75 images par seconde

Le terrain proche était dessiné bien trop finement, quel que soit votre réglage.

Un indice troublant a mis sur la piste : faire varier la distance d'affichage de 16 à 96 chunks ne changeait rien aux performances. Un coût insensible à la distance ne peut pas venir de l'horizon.

La cause : le terrain proche est dessiné morceau par morceau, soit un appel graphique par chunk — et le rayon de cette zone était bloqué à un minimum d'environ 32 chunks indépendamment de vos réglages. Près de quatre mille appels graphiques permanents, que vous affichiez 16 chunks ou 1024. Cette zone est désormais calée sur votre distance de rendu Minecraft.

Résultat mesuré : 22 → 75 images par seconde, et surtout des performances qui redeviennent sensibles à la distance d'affichage — le réglage reprend enfin son rôle.


Trois causes d'effondrement corrigées

Le remplissage travaillait de plus en plus dur… pour ne rien trouver. Le balayage qui cherche les zones à compléter limitait le nombre de chunks produits, mais jamais le nombre de chunks examinés. Une fois la carte bien remplie, il parcourait l'intégralité de chaque anneau pour constater qu'il n'y avait rien à faire — jusqu'à un million de vérifications par passage, plusieurs fois par seconde. Plus votre carte était complète, plus le jeu ramait. Le travail d'examen est maintenant borné, et reprend où il s'était arrêté.

Un compteur de textures relancé pour chaque bloc. À l'injection des données, le mod résolvait l'apparence d'un bloc pour chaque cellule — des dizaines de milliers de fois par seconde, en plein rendu. Ces apparences sont désormais mémorisées.

Un cercle vicieux dans le nettoyage mémoire. Les données graphiques inutilisées étaient libérées après un certain nombre d'images. À 140 images par seconde, cela représentait un tiers de seconde ; à 5 images par seconde, quarante-cinq secondes. Le nettoyage se paralysait donc exactement quand on en avait le plus besoin, et les performances ne pouvaient plus remonter. Il fonctionne maintenant en temps réel.


Le remplissage automatique fonctionne enfin

Il ne fonctionnait pas du tout. Les informations nécessaires au client pour reconstituer le terrain étaient effacées à chaque connexion, par une course entre le réseau et l'affichage. Le mécanisme était donc inerte depuis longtemps — ce qui explique les régions restées vides malgré tous les réglages.

Le balayage ne servait qu'un seul côté. Il repartait systématiquement du même coin avec un petit quota : un côté du paysage se remplissait, les trois autres n'y arrivaient jamais. Il progresse désormais tout autour, et reprend où il s'est arrêté.

Il ne dépassait jamais les environs immédiats. Le parcours se réinitialisait à chaque chunk franchi ; en se déplaçant, de nouvelles zones proches apparaissant sans cesse, le lointain n'était jamais traité.

Ordre garanti : le remplissage part toujours de votre position vers l'extérieur, y compris après une téléportation ou une reconnexion. Et il consulte votre cache disque avant de fabriquer quoi que ce soit.


Distance d'affichage automatique

La jauge devient un plafond plutôt qu'une valeur figée : le mod cherche la plus grande distance que votre machine tient réellement, dans une plage de 30 à 60 images par seconde.

Deux garde-fous ont été ajoutés après observation :

  • Il vérifie que ses réductions servent à quelque chose. Si réduire n'améliore rien, il en conclut que le ralentissement vient d'ailleurs, restaure la distance et n'y touche plus pendant un moment. Il ne se dégrade plus pour rien.
  • Une soupape d'urgence : sous 15 images par seconde, il réduit sans condition. Il ne peut plus vous enfermer dans une situation injouable.

Il refuse par ailleurs d'étendre l'horizon tant que ce qu'il affiche déjà n'est pas réellement rempli — mieux vaut un horizon proche et complet qu'un horizon lointain troué.


Compteur d'images intégré

Dans les options OmniGen, un bouton FPS à trois positions : masqué, simple, détaillé.

Le mode détaillé affiche minimum, moyenne, maximum et surtout le 1 % le plus bas — la vraie mesure de la fluidité ressentie. Une moyenne à 70 avec des chutes à 12 se joue beaucoup moins bien qu'un 60 régulier, et seule cette valeur le montre.

(Utile si vous n'avez pas Sodium Extra. L'affichage s'efface automatiquement quand F3 est ouvert.)


Rendu

  • Regroupement du terrain très lointain en blocs de 32×32 chunks, pour réduire le nombre d'appels graphiques au-delà de 96 chunks.
  • Reconstructions regroupées : quand une zone reçoit beaucoup de données d'un coup, elle attend la fin de la rafale au lieu de se reconstruire en boucle.
  • Correction du dessous des surfaces : les faces inférieures étaient décrites au moteur graphique comme tournées vers le ciel, ce qui les éclairait en plein soleil. Défaut invisible sans shaderpack, flagrant avec.

À savoir

  • Mettez votre serveur à jour : les versions antérieures à la 0.3.37.11 peuvent s'arrêter lorsqu'un joueur se connecte.
  • Chaque nouveauté possède son propre interrupteur dans le code, indépendamment des autres.
  • Si vos performances vous semblent limitées, vérifiez d'abord votre distance de rendu Minecraft : elle pèse souvent plus lourd que la distance d'affichage du mod.

Défauts connus

  • Trous sous les îles flottantes vues du dessous, et arbres allongés en flèches dans les forêts denses à moyenne distance. Deux tentatives de correction figurent dans cette version mais restent sans effet ; le sujet est repris dans la prochaine.
  • Les zones visitées puis quittées sont conservées en qualité réduite et ne retrouvent pas leur finesse au retour.

À venir

  • Redonner leur finesse aux zones parcourues puis quittées.
  • Reprendre les deux défauts visuels ci-dessus, correctement cette fois.
  • Arbres et structures dans le terrain reconstitué par le client.
  • Inventaire client → serveur, pour ne plus jamais retransmettre ce que le joueur possède déjà.
0.3.37.15-BETAБета1.21.1 · 28 июля 2026 г.

OmniGen 0.3.37.15-BETA — Changelog

NeoForge 1.21.1 — Une grosse passe de corrections visuelles et de remplissage : le terrain lointain gagne du volume, l'horizon se remplit enfin dans toutes les directions, et le mod n'affiche plus une distance qu'il ne tient pas.


Le terrain lointain se remplissait d'un seul côté

Le défaut le plus visible de la version précédente. Le remplissage automatique parcourait un anneau autour du joueur en repartant systématiquement du même coin, avec un petit quota par passage. Sur un grand rayon, cela signifiait retraiter éternellement les mêmes zones : un côté du paysage se remplissait, les trois autres n'y arrivaient jamais.

Le parcours reprend désormais là où il s'est arrêté, et fait le tour complet. L'horizon se construit uniformément, à 360°.

Deux autres blocages levés au passage :

  • Le balayage repartait de zéro à chaque chunk franchi. En vol, de nouvelles zones proches apparaissant sans cesse, il ne dépassait jamais les premiers anneaux : le lointain n'était jamais traité. Il ne se réinitialise plus que sur une téléportation.
  • Le remplissage s'arrêtait au rayon configuré, souvent inférieur à la distance d'affichage — tout ce qui dépassait restait définitivement troué. Il couvre maintenant ce qui est réellement affiché.

Le débit a par ailleurs été multiplié par huit, ce que la répartition sur plusieurs fils d'exécution et la précision adaptée à la distance rendent possible sans coût pour les images.


Ordre de chargement garanti

Toujours depuis vous, vers l'extérieur. Deux tiers du travail repartent systématiquement de votre position : un manque juste à côté de vous est comblé immédiatement, même si le remplissage lointain est occupé ailleurs. Le reste fait progresser l'horizon en arrière-plan.

La réserve avant la fabrication. Le client ne génère plus rien tant qu'il n'a pas fini de relire son cache disque — il produisait sinon du terrain qu'il possédait déjà, pour le voir remplacé quelques secondes plus tard.

Reprise propre. Après une déconnexion ou une téléportation, tout repart de votre position réelle. Auparavant, la progression survivait au changement de monde et le remplissage reprenait au milieu d'un parcours calculé pour l'ancien endroit, laissant un secteur vide autour de vous.


Rendu

Les îles ont un dessous. Vu d'en bas, le terrain lointain n'avait aucune face inférieure : on voyait au travers. Le volume est désormais fermé.

Fin du dessous blanchâtre. Les faces inférieures étaient décrites au moteur graphique comme tournées vers le ciel — elles recevaient donc la lumière du soleil en plein. Défaut invisible sans shaderpack, flagrant avec.

Plus de colonnes rayées. Une île entourée d'océan profond engendrait un mur descendant sur plus de cent blocs, étiré en longues traînées de couleur. La profondeur de ces parois est désormais bornée.

Terrain très lointain regroupé. Au-delà d'une certaine distance, le paysage est assemblé par blocs de 32×32 chunks au lieu d'être découpé plus finement, ce qui réduit fortement le nombre d'appels graphiques sans changer un pixel.


Distance d'affichage automatique

Le réglage automatique suit maintenant deux critères au lieu d'un.

La fluidité, sur une plage large de 30 à 60 images par seconde. Entre les deux, il ne touche à rien — l'ancienne fenêtre, trop étroite, provoquait des ajustements permanents.

La complétude : il ne repousse l'horizon que si ce qu'il affiche déjà est réellement rempli. Mieux vaut un horizon proche et complet qu'un horizon lointain troué. Si l'affichage est trop lacunaire, il resserre — même quand les images sont fluides.

Et il rend ce qu'il a pris. S'il constate qu'une réduction n'a rien amélioré, il en conclut que le ralentissement vient d'ailleurs, restaure la distance et n'y touche plus pendant dix minutes. Auparavant il ne faisait que descendre, sans jamais remonter sur une machine qui n'atteignait pas la cible.


À savoir

  • Changements purement client.
  • Chaque nouveauté possède son propre interrupteur, indépendamment des autres.
  • Le remplissage automatique travaille beaucoup plus qu'avant. Il s'exécute en priorité minimale et ne devrait pas peser sur les images.

À venir

  • Restaurer le fondu de transition entre terrain lointain et chunks réels.
  • Prise en compte des blocs non pleins (barrières, dalles, vitres) dans le terrain lointain.
  • Inventaire client → serveur, pour ne plus jamais retransmettre ce que le joueur possède déjà.
0.3.37.14-BETAБета1.21.1 · 27 июля 2026 г.

OmniGen 0.3.37.14-BETA — Changelog

NeoForge 1.21.1 — Le client ne se contente plus d'afficher ce que le serveur lui envoie : il complète lui-même ce qui manque. Et le mod commence à régler tout seul sa distance d'affichage.


Le client comble les trous du serveur

La carte lointaine se remplit même sans le serveur Jusqu'ici, une zone que le serveur n'avait pas encore transmise restait vide. Le client sait pourtant reconstituer le relief à partir de la recette du monde — il le faisait déjà, mais dans un format à part, plat et sans texture, visiblement différent du reste.

Ce terrain reconstitué est désormais produit dans le même format que celui du serveur : avec du volume et les vraies textures de blocs. Il passe par le même moteur de rendu, hérite des mêmes niveaux de détail, des mêmes ombrages. Résultat : les trous se comblent de façon indiscernable du terrain reçu, au lieu d'être rapiécés dans un autre style.

La vérité prime toujours sur l'estimation Ce terrain reconstitué est une prédiction calculée depuis la graine du monde. Il ne peut jamais écraser une donnée réelle : il ne remplit que les vides. Dès que le serveur transmet la vraie version d'une zone, elle remplace la prédiction — même si celle-ci semblait plus détaillée.

À savoir : la prédiction reproduit fidèlement le relief naturel, mais elle ignore ce qui a été construit ou creusé par les joueurs, ainsi que les arbres et villages. Sur les zones habitées, elle reste un bouche-trou temporaire, pas un remplaçant.

Le remplissage est enfin à l'échelle Le calcul tournait sur un seul fil d'exécution, à pleine précision quelle que soit la distance : couvrir un large rayon aurait demandé des heures. Deux changements le rendent réaliste : le travail est réparti sur plusieurs fils, et la précision suit la distance — inutile de calculer au bloc près un terrain que l'affichage simplifiera de toute façon. Au loin, le coût est divisé par plusieurs centaines.

Le balayage vise maintenant les zones manquantes plutôt qu'un simple anneau : il ignore ce que le serveur a déjà envoyé, et affine ses propres estimations à mesure que vous vous approchez.


Chargement et fluidité

Le terrain lointain ne rampe plus sous shaders Les quantités de terrain préparées à chaque image étaient comptées par image. Avec un shaderpack, le nombre d'images par seconde chute — et le remplissage devenait mécaniquement trois fois plus lent, alors que la machine n'était pas plus occupée. Ces quantités sont désormais calculées en fonction du temps écoulé : le débit reste constant, avec ou sans shaders.

Distance d'affichage automatique Le mod mesure sa propre part dans le temps de calcul de chaque image et ajuste sa distance pour préserver la fluidité. La jauge devient un plafond — « je ne veux pas voir plus loin que ça » — et non plus une valeur figée.

Point important : avant de réduire quoi que ce soit, le mod vérifie qu'il est bien responsable du ralentissement. Si la lenteur vient d'ailleurs, il ne dégrade rien — inutile de sacrifier la qualité pour un gain nul.

Le réglage se fait en mémoire : votre fichier de configuration n'est jamais modifié.


À savoir

  • Changements purement client : rien à faire côté serveur.
  • Si votre rayon de reconstitution est inférieur à votre distance d'affichage, le client ne comblera les trous que jusqu'à ce rayon — pensez à l'aligner.
  • Chaque nouveauté peut être désactivée séparément en cas de souci.

À venir

  • Regrouper le terrain très lointain en blocs plus larges, pour réduire fortement le nombre d'appels graphiques.
  • Restaurer le fondu de transition entre terrain lointain et chunks réels.
  • Inventaire client → serveur, pour ne plus jamais retransmettre ce que le joueur possède déjà.
0.3.37.13-BETAБета1.21.1 · 26 июля 2026 г.

OmniGen 0.3.37.13-BETA — Changelog

NeoForge 1.21.1 — Cette version s'attaque aux shaderpacks. Le terrain lointain était jusqu'ici traité comme de la géométrie anonyme : il est désormais présenté au shader comme du vrai terrain.


Compatibilité shaders

Le LOD est enfin éclairé comme du terrain Le terrain lointain était construit sans normales — l'information qui indique dans quelle direction une surface est tournée. Or c'est exactement ce dont un shaderpack a besoin pour calculer l'éclairage, les ombres et les reflets. Sans elle, le LOD recevait un éclairage arbitraire et ne se raccordait pas au terrain réel.

Chaque face porte maintenant sa normale, et le terrain lointain est dessiné avec le même shader que les vrais chunks. Pour un shaderpack, le LOD ressemble désormais à du terrain ordinaire et reçoit le même traitement.

Gain de performance sous shaders Un shaderpack dessine la scène deux fois : une passe pour les ombres, une pour l'image finale. Tout le terrain lointain était donc calculé en double. Comme les ombres projetées par du relief situé à plusieurs centaines de blocs sont invisibles à l'œil, cette passe est désormais sautée pour le LOD. Sur les configurations où le shader était le goulot d'étranglement, le gain peut être important.

(Si votre version d'Iris ne permet pas cette détection, le rendu se comporte comme avant — sans gain, mais sans régression.)

Packs en liste noire Certains shaderpacks étaient jusqu'ici totalement privés de LOD, faute de savoir traiter notre géométrie. Ce correctif s'attaque à la cause du problème : si un pack de votre liste lod_shader_blocklist fonctionne désormais, vous pouvez l'en retirer.


Ce que cette version retire temporairement

Le fondu LOD → chunk réel L'animation de transition reposait sur un shader maison, incompatible avec le nouveau format de géométrie. Le maintenir aurait cassé le rendu sans shaderpack — le cas le plus courant. La transition est donc nette pour l'instant ; l'animation reviendra une fois ce shader porté.


À savoir

  • Changement purement client : rien à faire côté serveur.
  • Réversible intégralement en cas de souci, sans perdre les autres nouveautés.
  • Testez d'abord sans shaderpack : c'est le rendu qui a le plus changé, donc là où une régression est la plus probable.

À venir

  • Restaurer le fondu de transition au nouveau format.
  • Peinture au très lointain : couleur plate au-delà d'une certaine distance, invisible à l'œil et bien moins coûteuse.
  • Inventaire client → serveur, pour ne plus jamais retransmettre ce que le joueur possède déjà.

Комментарии

Загружаем…