{"id":"82f02fb5-93b3-44fd-be72-33b629ab3064","arxiv_id":"2508.09062","paper_version":1,"verdict":"CONDITIONAL","confidence":"MODERATE","novelty_score":7.0,"correctness_risk":"medium","formal_verification":"none","parameter_count":4,"one_line_summary":"VertexRegen generates meshes by autoregressively predicting vertex splits that refine a coarse base mesh, so every intermediate step is a valid mesh at a different level of detail.","lead":"VertexRegen trains a Transformer to build 3D meshes by reversing edge collapse, generating a coarse mesh first and refining it with vertex splits. It matters because the mesh is valid and usable at every step, so generation can stop early and still return a complete object.","discovery_kind":"new_method","skeptic_critique":{"model":"deepseek-v4-flash","headline":"Anytime-valid mesh claim rests on unverified topological validity of generated M0 and of each vertex split; no degeneracy or manifoldness check is described.","rationale":"The paper's strongest claim is about valid intermediate meshes at every stopping point. If that claim fails, the novel contribution reduces to a serialized coarse-to-fine mesh generator rather than an anytime-LOD generator, so this is the most load-bearing assumption in the paper. The concern is not an internal contradiction but an unsupported assumption: the guided decoder checks local edge existence and vertex membership, but it does not verify the topological validity of the generated base mesh, and M0 is generated by an unconstrained face-soup tokenizer. The paper itself signals fragility in Section 4.4, where removing the guidance causes early termination, yet it never reports the fraction of generated prefixes that are topologically valid. This is an addressable gap: a validity-rate audit would settle whether the anytime claim holds. If the audit passes at high rates, the paper's central claim is supported; if it fails, the method needs an explicit M0 validity filter or a re-framed claim. I therefore keep the reader's CONDITIONAL verdict unchanged rather than raising it to a rejection, because the concern is verifiable and may be resolvable with the existing framework.","tokens_in":12890,"tokens_out":3624,"duration_ms":43032,"concrete_test":"Using the released checkpoint and decoding code, or a reimplementation on the 18k-sample evaluation split, sample N=1000 meshes and record the mesh after M0 and after every vertex split. For each recorded mesh run an independent topology check, e.g. OpenMesh or CGAL: (i) manifoldness at every edge and vertex, (ii) orientability, (iii) no zero-area or degenerate faces, and (iv) no triangle-level self-intersection. Report the fraction of prefixes that pass all checks, separately for M0 and as a function of prefix step. If the M0 pass rate is not near 100% or the prefix pass rate drops below 99% at any step, the 'valid at every step' claim fails for the actual generation procedure, and the paper should either quantify that failure rate or add a validity filter for M0 and for vt placement.","verdict_should_be":"UNCHANGED","load_bearing_attack":"The paper's central property — stopping at any step yields a valid mesh Mk — depends on a decode-time state machine that is only partially specified. Section 3.2.1 enforces three graph conditions: vs is a vertex of Mk, (vs, vl) and (vs, vr) are edges, and at most one of vl, vr is <nil>. It does not enforce, for M0 or for any Mk, manifoldness, orientability, absence of duplicate or zero-area faces, absence of non-manifold edges or vertices, or non-degeneracy of the predicted vt. Since M0 is produced by the MeshXL-style face-soup tokenizer with no described validity filter, it can be a non-manifold or inconsistently oriented triangle soup; the half-edge structure used for vertex split traversal is only well-defined on manifold, oriented meshes. Since vt is a raw discretized coordinate, the model can output vt = vs or vt collinear with vl and vr without tripping the stated checks. Table 4 shows that the guided-decoding mechanism is not a formality — without it generation stops early (211 vs. 320 faces) — but the table reports face counts, not topology-pass rates. The paper therefore does not establish that the state machine preserves topological validity starting from an arbitrary generated M0, and the anytime guarantee is exactly as strong as this unverified mechanism.","agreement_with_reader":"agree"},"referee_report":{"model":"deepseek-v4-flash","summary":"VertexRegen reframes autoregressive mesh generation as the reversal of edge collapses, i.e., the prediction of vertex splits in a progressive-mesh representation. A coarse base mesh M0 is first generated with a MeshXL-style triangle-soup tokenizer, and then a sequence of vertex splits is predicted as coordinate tokens. A half-edge-based state machine decodes each split on the fly, so that any prefix of the generation process corresponds to a mesh Mk at an intermediate level of detail. The paper evaluates unconditional generation against MeshXL, MeshAnything V2, and EdgeRunner on COV, MMD, 1-NNA, and JSD, and reports comparable quality while offering face-count-constrained generation; it also shows qualitative shape-conditioned results.","tokens_in":13147,"tokens_out":6273,"duration_ms":66182,"significance":"If the anytime-validity claim can be substantiated, this is a meaningful advance: it converts the partial-to-complete paradigm of prior autoregressive mesh generators into a coarse-to-fine one, and the half-edge parameterization is a clean, token-efficient way to resolve the ambiguity in vertex-split rings. The progressive-mesh mathematics is standard, the traversal argument in Eqs. (1)-(3) is sound for manifold oriented meshes, and the compression-ratio analysis in Table 3 is informative. The paper also deserves credit for directly comparing with strong baselines and for ablating the guided-decoding mechanism. The load-bearing gap is empirical verification of the validity guarantee, not the core framing.","major_comments":[{"comment":"The central claim that \"each step yields a valid mesh Mk\" is not established by the decoding procedure as written. The state machine enforces only that vs is a vertex of Mk, that (vs, vl) and (vs, vr) are edges, and that at most one of vl and vr is nil; it does not check manifoldness, orientability, absence of duplicate or zero-area faces, or non-degeneracy of the predicted vt. Since vt is a raw discretized coordinate, the model can output vt = vs or a point collinear with vl and vr without violating the listed checks, creating zero-area or inverted faces. Moreover, M0 is produced by the MeshXL-style triangle-soup tokenizer with no validity filter described, so the half-edge structure on which the traversal in Eqs. (1)-(3) relies is not guaranteed to be well-defined for generated meshes. Please specify the full set of validity checks, apply them to every intermediate Mk, and report the pass rate; otherwise the anytime guarantee is exactly as strong as an unverified filter.","section":"§3.2.1 (Vertex Split Decoding)"},{"comment":"The mapping from predicted coordinate tokens to the existing vertices vs, vl, and vr is underspecified. The text says that these references are implemented as raw predictions of each vertex to avoid a vocabulary proportional to sequence length, but it does not explain how a predicted quantized coordinate is matched to a vertex identifier in the current mesh, nor how ties or near-duplicate coordinates are resolved. Since the decoding checks require deciding whether vs is a vertex and whether the two incident edges exist, this matching rule must be defined precisely for the state machine to be implementable and for the validity claim to be testable.","section":"§3.2.1 (Vertex Split Tokenization and Decoding)"},{"comment":"The ablation in Table 4 reports face counts (211 vs. 320) but not the rate at which the decoding state machine accepts, rejects, or repairs predictions, nor the fraction of generated sequences whose every intermediate mesh Mk is topologically valid. Without those numbers, the reader cannot tell whether the anytime property holds in practice or only for a small fraction of samples. Please report the validity pass rate, the distribution of validity over the steps of each sequence, and the failure modes among rejected splits.","section":"§4.4 (Guided Decoding)"},{"comment":"Table 1 reports a single evaluation without error bars or multiple seeds. Given that the paper claims \"comparable quality\" to state-of-the-art methods, reporting at least three seeds or bootstrap confidence intervals for COV, MMD, 1-NNA, and JSD would make the comparison more robust, especially because the differences between methods are small on most metrics.","section":"§4.3.1 (Table 1)"}],"minor_comments":[{"comment":"The phrase \"only one of vl and vr is allowed to be <nil>\" is ambiguous; it should say \"at most one\" because interior vertex splits have two non-nil neighbors and boundary splits have exactly one nil neighbor.","section":"§3.2.1"},{"comment":"The half-edge notation in Eqs. (1)-(3) and Fig. 4, such as H^k_s or H^k_·s, is not defined in the text; please define the indexing convention before using it in the traversal argument.","section":"§3.2.1"},{"comment":"The formal sequence notation \"M : [ <bos>, [M0 sequence], <sep>, [vsplit0], ..., [vsplitn-1], <eos>]\" is printed with stray comments (#M0 and #vsplits) that make it hard to read; please format the sequence grammar cleanly.","section":"§3.2.1"},{"comment":"Shape-conditioned generation is evaluated only qualitatively in Fig. 9; if conditional generation is to be considered a supported capability, quantitative conditioned metrics such as COV, MMD, and 1-NNA on a held-out split should be reported.","section":"§4.3.2"},{"comment":"The sentence \"We neither used assets from Sketchfab nor obtained any from the Polycam website\" is out of place in the dataset paragraph; if it addresses dataset provenance or licensing, it should be integrated into a concise provenance statement.","section":"§4.1"},{"comment":"The term \"continuous level of detail\" could be qualified: the method offers discrete resolution steps controlled by the number of applied vertex splits; it is continuous in the sense that generation can be halted at any split, not in the sense of a continuous geometric parameter.","section":"Throughout"}],"recommendation":"major_revision","confidential_remarks":"I agree with the conditional verdict. The core progressive-mesh framing is sound and the empirical comparison is reasonable, but the anytime-validity claim requires direct empirical verification of the decoding state machine, including the validity of M0 and of every intermediate Mk. This is fixable within the scope of the manuscript by adding validity checks, specifying the coordinate-to-vertex matching rule, and reporting pass rates. I did not treat the absence of error bars in Table 1 as blocking, but it should be addressed in revision."},"author_rebuttal":null,"desk_editor":{"model":"deepseek-v4-flash","letter":"Short version: this is the first mesh-generation paper I’ve seen that takes progressive meshes seriously as a generative serialization, and the half-edge trick for resolving which ring vertices go to vs and vt is genuinely clever. The face-count-constrained experiments support the practical claim: you can halt early and get a usable coarse mesh rather than a torn one. But the anytime guarantee is not actually proven. The paper states that each step yields a valid mesh Mk, yet the state machine in Sec. 3.2.1 only enforces three conditions: vs is an existing vertex, (vs,vl) and (vs,vr) are edges, and at most one of vl, vr is <nil>. It does not enforce manifoldness, orientability, absence of duplicate or zero-area faces, or non-degeneracy of vt. M0 comes from a MeshXL-style face-soup tokenizer with no described validity filter, so it can be a non-manifold, inconsistently oriented triangle soup; the half-edge traversal used for vertex splits is only well-defined on manifold, oriented meshes. Since vt is a raw discretized coordinate, the model can output vt = vs or vt collinear with vl and vr without tripping any stated check. Table 4 shows the guided decoder is not a formality — without it generation stops at 211 faces instead of 320 — but the table reports face counts, not topology pass rates. So the central claim is plausible but under-supported. What is actually new: the vertex-split serialization, with the half-edge ring assignment, is a real departure from face-soup and EdgeBreaker tokenizations. The compression analysis is honest (0.73 vs. the theoretical 0.67), and the face-count-constrained comparison against MeshXL-with-FCC is a fair head-to-head. The progressive-mesh math in Sec. 3.1 is standard, correctly applied. The dataset filtering to manifold meshes is stated, which is good, but it makes the absence of a generation-time validity check more conspicuous, not less. Minor issues: Table 1 is single-run with no error bars, standard for this subfield but worth noting; no code or dataset release makes reproduction harder; conditional generation is qualitative only. Bottom line: worth a serious referee — the core idea should survive review. The authors need to either prove that the state machine preserves manifoldness for every decodable prefix, or soften the claim to “valid under the three stated graph conditions” and then quantify how often full prefixes decode to manifold, non-degenerate meshes. A pass-rate curve over generation steps would settle it.","headline":"Clever vertex-split serialization with a genuinely new anytime-generation claim, but the central validity guarantee is under-demonstrated: the decode-time state machine checks too little to ensure manifold, non-degenerate meshes at every prefix.","tokens_in":13681,"tokens_out":2488,"would_cite":true,"duration_ms":27958,"reading_group":"yes","serious_thinker":"yes","would_accept_peer_review":true},"rs_alignment":null,"lean_confirmation":null,"pith_extraction":{"msc":[],"pacs":[],"model":"deepseek-v4-flash","headline":"VertexRegen reformulates mesh generation as reversing edge collapse, so halting generation at any step yields a complete, valid mesh at a coarser level of detail.","keywords":["mesh generation","progressive meshes","vertex split","level of detail","autoregressive transformer","anytime generation","3D shape generation"],"falsifier":"Halt many VertexRegen generations at every step and test each intermediate mesh for manifold validity (each edge shared by exactly two faces, no non-manifold vertices) and compare the intermediate to the QEM simplification of the final output at the same face count; also record how often the predicted M0 itself is valid. If a substantial fraction of prefixes are invalid, or if intermediate meshes diverge strongly from simplified versions of the final mesh, the anytime-generation claim fails.","tokens_in":12698,"feed_emoji":"🧊","tokens_out":7134,"duration_ms":72137,"temperature":0.7,"pith_summary":"VertexRegen claims that mesh generation can be reframed as learning to reverse edge collapse: instead of emitting triangles until a shape is complete, the model first emits a coarse base mesh and then a sequence of vertex splits, each of which adds two triangles and refines the geometry. Because every split is applied to an already-valid mesh, stopping the autoregressive process at any point yields a complete, usable mesh at a coarser level of detail rather than a half-finished object. The paper presents this as anytime generation with continuous level of detail, and reports quality comparable to existing direct mesh generators on standard metrics while beating them when the face budget is small. The central move is to parameterize a progressive mesh—a mesh plus its split records—as a compact token sequence that a standard next-token-prediction transformer can learn.","feed_headline":"Mesh generation you can stop early without breaking the mesh","feed_subtitle":"Each autoregressive step reverses an edge collapse, so every checkpoint is a valid level of detail.","key_machinery":"The load-bearing object is the vertex-split parameterization built on a progressive-mesh record and a half-edge data structure. In an edge collapse, two adjacent vertices merge and two faces vanish; the inverse, a vertex split, restores the second vertex and the two faces. VertexRegen encodes each split as a token subsequence giving the target vertex v_s, two ring vertices v_l and v_r (with a <nil> token for boundary edges), and the new vertex position v_t. The half-edge traversal starting from the edge (v_l, v_s) and moving around the vertex ring determines which neighboring vertices belong to v_s and which to v_t after the split, removing the ambiguity that would otherwise require a fourth vertex reference. This yields 12 tokens per interior split (10 on boundaries) and reduces average sequence length to 0.73 times that of a one-token-per-coordinate face soup, approaching the theoretical 0.67 limit. The guided-decoding state machine then enforces validity as tokens are generated, making every prefix decode into a manifold-consistent mesh.","core_discovery":"The paper's central claim is that the partial-to-complete paradigm of existing autoregressive mesh generators is not intrinsic to the approach. By constructing training data as progressive meshes—simplifying detailed meshes through repeated edge collapses and then recording the inverse vertex splits—VertexRegen trains a transformer to synthesize meshes from coarse to fine. Each predicted split identifies a vertex to split, two neighbors that locate the edge being re-opened, and the position of the new vertex; a half-edge traversal determines the rest of the connectivity, and a guided-decoding state machine rejects geometrically impossible choices. The result is that the k-th step of generation produces a complete mesh M_k, so the sequence M_0, M_1, ..., M_n is a chain of increasingly detailed valid meshes. Experiments on unconditional and shape-conditioned generation support the claim that quality is comparable to state-of-the-art autoregressive mesh generators, with better early-generation behavior when the face count is constrained.","pith_inferences":["The anytime property suggests a practical extension the paper does not develop: a single generated token stream could be stored or transmitted incrementally and rendered progressively, since every prefix is a valid mesh.","A natural testable extension is to score intermediate meshes with perceptual or semantic metrics rather than point-cloud distances; the paper's metrics may be insensitive to artifacts that appear at very coarse LODs.","Because the model learns splits that reverse QEM-ordered collapses from a filtered training set, its full LOD range is probably only as expressive as the diversity of coarse base meshes in that distribution; measuring whether M0 alone is recognizable as a plausible shape would probe this."],"forward_implications":["A single generation run produces a whole family of level-of-detail meshes, so applications such as rendering, streaming, or previewing can halt the process when compute or bandwidth runs out.","Under small face-count budgets, coarse intermediate meshes preserve global structure better than truncated outputs of prior methods, shown by improved COV, MMD, and 1-NNA at early steps.","Because the sequence length per added detail is small (12 tokens per two faces), the method generates more faces within a fixed context window than naive triangle-soup tokenization.","Guided decoding is a required component: without it, invalid splits break the chain and generation ends early, producing on average 211 faces instead of 320 in the ablation."],"supporting_citations":[{"why":"Defines edge collapse and vertex split, the reversible operations VertexRegen learns to generate.","marker":"[17]"},{"why":"Supplies the coordinate-tokenization scheme used for the coarse base mesh M0 and serves as a primary baseline.","marker":"[2]"},{"why":"Baseline with adjacency-based tokenization that must be matched at comparable sequence lengths.","marker":"[3]"},{"why":"Establishes the vertex ordering and face permutation conventions adopted for M0 tokenization.","marker":"[37]"},{"why":"Supplies the quadric-error-metric ordering used to build collapse sequences for the training data.","marker":"[12]"},{"why":"Defines the half-edge structure whose traversal disambiguates neighbor rings in a vertex split.","marker":"[48]"},{"why":"Provides the large mesh collection used for pre-training.","marker":"[9]"},{"why":"Provides the pretrained language-model backbone shared by the compared methods.","marker":"[56]"},{"why":"Serves as the face-count-conditioned baseline compared at a budget of 400 faces.","marker":"[43]"}],"fun_headline_variants":["Stop mid-generation and still have a full mesh","Every step of this mesh generator yields a valid mesh","Mesh generation you can pause anytime, always complete","Reversing edge collapse for anytime mesh generation","From coarse to fine: valid meshes at every step"],"cache_read_input_tokens":3200,"weakest_assumption_plain":"The load-bearing premise is that every prefix of the generated token stream, including the base mesh M0, can be decoded by the guided-decoding state machine into a topologically valid mesh; the paper does not quantify how often that decoding succeeds, and its own ablation shows that without guided decoding invalid splits end generation early.","fun_headline_variants_meta":{"raw":{"variants":["Stop mid-generation and still have a full mesh","Every step of this mesh generator yields a valid mesh","Mesh generation you can pause anytime, always complete","Reversing edge collapse for anytime mesh generation","From coarse to fine: valid meshes at every step"]},"model":"deepseek-v4-flash","effort":"low","cost_usd":0.0002,"raw_usage":{"total_tokens":1313,"prompt_tokens":823,"completion_tokens":490,"prompt_tokens_details":{"cached_tokens":384},"prompt_cache_hit_tokens":384,"prompt_cache_miss_tokens":439,"completion_tokens_details":{"reasoning_tokens":416}},"tokens_in":439,"tokens_out":490,"duration_ms":5126,"temperature":1.0,"reasoning_tokens":416,"cache_read_input_tokens":384,"cache_creation_input_tokens":0},"cache_creation_input_tokens":0},"created_at":"2026-08-15T17:31:31.780802+00:00","model_set":{"reader":"deepseek-v4-flash"},"falsifier":"Halt many VertexRegen generations at every step and test each intermediate mesh for manifold validity (each edge shared by exactly two faces, no non-manifold vertices) and compare the intermediate to the QEM simplification of the final output at the same face count; also record how often the predicted M0 itself is valid. If a substantial fraction of prefixes are invalid, or if intermediate meshes diverge strongly from simplified versions of the final mesh, the anytime-generation claim fails.","supporting_citations":[{"cited_title":"Progressive meshes","cited_arxiv_id":null,"evidence_quote":"Defines edge collapse and vertex split, the reversible operations VertexRegen learns to generate."},{"cited_title":"Meshxl: Neural coordinate field for generative 3d foundation models","cited_arxiv_id":null,"evidence_quote":"Supplies the coordinate-tokenization scheme used for the coarse base mesh M0 and serves as a primary baseline."},{"cited_title":"Meshgpt: Generating triangle meshes with decoder-only transformers","cited_arxiv_id":null,"evidence_quote":"Establishes the vertex ordering and face permutation conventions adopted for M0 tokenization."},{"cited_title":"Heckbert","cited_arxiv_id":null,"evidence_quote":"Supplies the quadric-error-metric ordering used to build collapse sequences for the training data."},{"cited_title":"Topological structures for geometric mod- eling (Boundary representation, manifold, radial edge struc- ture)","cited_arxiv_id":null,"evidence_quote":"Defines the half-edge structure whose traversal disambiguates neighbor rings in a vertex split."},{"cited_title":"Objaverse-xl: A universe of 10m+ 3d objects","cited_arxiv_id":null,"evidence_quote":"Provides the large mesh collection used for pre-training."},{"cited_title":"Edgerunner: Auto-regressive auto-encoder for artistic mesh generation","cited_arxiv_id":null,"evidence_quote":"Serves as the face-count-conditioned baseline compared at a budget of 400 faces."}],"review_version":2}