mirror of
https://github.com/Jozufozu/Flywheel.git
synced 2024-12-27 07:26:48 +01:00
Little tweaks and add the logo to mods.toml
This commit is contained in:
parent
1295b278a2
commit
7d6ec7d28f
5 changed files with 27 additions and 33 deletions
13
README.md
13
README.md
|
@ -1,5 +1,5 @@
|
||||||
<div align="center">
|
<div align="center">
|
||||||
<img src="https://i.imgur.com/yVFgPpr.png" alt="Logo" width="250">
|
<img src="https://i.imgur.com/yVFgPpr.png" alt="Logo by @voxel_dani on Twitter" width="250">
|
||||||
<h1>Flywheel</h1>
|
<h1>Flywheel</h1>
|
||||||
<h6>A modern engine for modded Minecraft.</h6>
|
<h6>A modern engine for modded Minecraft.</h6>
|
||||||
<a href="https://discord.gg/xjD59ThnXy"><img src="https://img.shields.io/discord/841464837406195712?color=844685&label=Discord&style=flat" alt="Discord"></a>
|
<a href="https://discord.gg/xjD59ThnXy"><img src="https://img.shields.io/discord/841464837406195712?color=844685&label=Discord&style=flat" alt="Discord"></a>
|
||||||
|
@ -7,14 +7,21 @@
|
||||||
<br>
|
<br>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
### About
|
## About
|
||||||
The goal of this project is to provide tools for mod developers so they no longer have to worry about performance, or limitations of Minecraft's archaic rendering engine.
|
The goal of this project is to provide tools for mod developers so they no longer have to worry about performance, or limitations of Minecraft's archaic rendering engine.
|
||||||
That said, this is primarily an outlet for me to have fun with graphics programming.
|
That said, this is primarily an outlet for me to have fun with graphics programming.
|
||||||
|
|
||||||
|
|
||||||
### Instancing
|
### Instancing
|
||||||
|
Flywheel provides an alternate, unified path for entity and tile entity rendering that takes advantage of GPU instancing. In doing so, Flywheel gives the developer the flexibility to define their own vertex and instance formats, and write custom shaders to ingest that data.
|
||||||
|
|
||||||
So far, Flywheel provides an alternate, unified path for entity and tile entity rendering that takes advantage of GPU instancing. In doing so, Flywheel gives the developer the flexibility to define their own vertex and instance formats, and write custom shaders to ingest that data.
|
|
||||||
|
|
||||||
### Shaders
|
### Shaders
|
||||||
To accomodate the developer and leave more in the hands of the engine, Flywheel provides a custom shader loading and templating system to hide the details of the CPU/GPU interface. This system is a work in progress. There will be breaking changes, and I make no guarantees of backwards compatibility.
|
To accomodate the developer and leave more in the hands of the engine, Flywheel provides a custom shader loading and templating system to hide the details of the CPU/GPU interface. This system is a work in progress. There will be breaking changes, and I make no guarantees of backwards compatibility.
|
||||||
|
|
||||||
|
|
||||||
|
### Plans
|
||||||
|
- Vanilla performance improvements
|
||||||
|
- Compute shader particles
|
||||||
|
- Deferred rendering
|
||||||
|
- Different renderers for differently aged hardware
|
||||||
|
|
38
build.gradle
38
build.gradle
|
@ -32,8 +32,6 @@ minecraft {
|
||||||
|
|
||||||
accessTransformer = file('src/main/resources/META-INF/accesstransformer.cfg')
|
accessTransformer = file('src/main/resources/META-INF/accesstransformer.cfg')
|
||||||
|
|
||||||
// Default run configurations.
|
|
||||||
// These can be tweaked, removed, or duplicated as needed.
|
|
||||||
runs {
|
runs {
|
||||||
client {
|
client {
|
||||||
workingDirectory project.file('run')
|
workingDirectory project.file('run')
|
||||||
|
@ -53,16 +51,7 @@ minecraft {
|
||||||
server {
|
server {
|
||||||
workingDirectory project.file('run')
|
workingDirectory project.file('run')
|
||||||
|
|
||||||
// Recommended logging data for a userdev environment
|
|
||||||
// The markers can be changed as needed.
|
|
||||||
// "SCAN": For mods scan.
|
|
||||||
// "REGISTRIES": For firing of registry events.
|
|
||||||
// "REGISTRYDUMP": For getting the contents of all registries.
|
|
||||||
property 'forge.logging.markers', 'REGISTRIES'
|
property 'forge.logging.markers', 'REGISTRIES'
|
||||||
|
|
||||||
// Recommended logging level for the console
|
|
||||||
// You can set various levels here.
|
|
||||||
// Please read: https://stackoverflow.com/questions/2031163/when-to-use-the-different-log-levels
|
|
||||||
property 'forge.logging.console.level', 'debug'
|
property 'forge.logging.console.level', 'debug'
|
||||||
|
|
||||||
arg "-mixin.config=flywheel.mixins.json"
|
arg "-mixin.config=flywheel.mixins.json"
|
||||||
|
@ -77,16 +66,7 @@ minecraft {
|
||||||
data {
|
data {
|
||||||
workingDirectory project.file('run')
|
workingDirectory project.file('run')
|
||||||
|
|
||||||
// Recommended logging data for a userdev environment
|
|
||||||
// The markers can be changed as needed.
|
|
||||||
// "SCAN": For mods scan.
|
|
||||||
// "REGISTRIES": For firing of registry events.
|
|
||||||
// "REGISTRYDUMP": For getting the contents of all registries.
|
|
||||||
property 'forge.logging.markers', 'REGISTRIES'
|
property 'forge.logging.markers', 'REGISTRIES'
|
||||||
|
|
||||||
// Recommended logging level for the console
|
|
||||||
// You can set various levels here.
|
|
||||||
// Please read: https://stackoverflow.com/questions/2031163/when-to-use-the-different-log-levels
|
|
||||||
property 'forge.logging.console.level', 'debug'
|
property 'forge.logging.console.level', 'debug'
|
||||||
|
|
||||||
// Specify the modid for data generation, where to output the resulting resource, and where to look for existing resources.
|
// Specify the modid for data generation, where to output the resulting resource, and where to look for existing resources.
|
||||||
|
@ -111,15 +91,15 @@ sourceSets.main.resources { srcDir 'src/generated/resources' }
|
||||||
repositories {
|
repositories {
|
||||||
maven {
|
maven {
|
||||||
//location of the maven for mixed mappings and registrate
|
//location of the maven for mixed mappings and registrate
|
||||||
name = "tterrag maven"
|
name "tterrag maven"
|
||||||
url = "https://maven.tterrag.com/"
|
url "https://maven.tterrag.com/"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
minecraft "net.minecraftforge:forge:${minecraft_version}-${forge_version}"
|
minecraft "net.minecraftforge:forge:${minecraft_version}-${forge_version}"
|
||||||
|
|
||||||
annotationProcessor 'org.spongepowered:mixin:0.8:processor'
|
annotationProcessor 'org.spongepowered:mixin:0.8.2:processor'
|
||||||
}
|
}
|
||||||
|
|
||||||
// Example for how to get properties into the manifest for reading by the runtime..
|
// Example for how to get properties into the manifest for reading by the runtime..
|
||||||
|
@ -140,6 +120,13 @@ jar {
|
||||||
|
|
||||||
jar.finalizedBy('reobfJar')
|
jar.finalizedBy('reobfJar')
|
||||||
|
|
||||||
|
task sourcesJar(type: Jar) {
|
||||||
|
from sourceSets.main.allSource
|
||||||
|
archiveBaseName.set(project.archivesBaseName)
|
||||||
|
archiveVersion.set("${project.version}")
|
||||||
|
archiveClassifier.set('sources')
|
||||||
|
}
|
||||||
|
|
||||||
tasks.curseforge.enabled = !dev && project.hasProperty('jozu_curseforge_key')
|
tasks.curseforge.enabled = !dev && project.hasProperty('jozu_curseforge_key')
|
||||||
|
|
||||||
curseforge {
|
curseforge {
|
||||||
|
@ -151,8 +138,7 @@ curseforge {
|
||||||
id = project.projectId
|
id = project.projectId
|
||||||
changelog = file('changelog.txt')
|
changelog = file('changelog.txt')
|
||||||
releaseType = project.curse_type
|
releaseType = project.curse_type
|
||||||
mainArtifact(jar) {
|
mainArtifact jar
|
||||||
displayName = "${archivesBaseName}-${version}"
|
addArtifact sourcesJar
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -72,7 +72,7 @@ public class WeakHashSet<T> extends AbstractSet<T> {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean remove(Object o) {
|
public boolean remove(Object o) {
|
||||||
return map.remove((T) o) != null;
|
return map.remove(o) != null;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -82,7 +82,7 @@ public class WeakHashSet<T> extends AbstractSet<T> {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean contains(Object o) {
|
public boolean contains(Object o) {
|
||||||
return map.containsKey((T) o);
|
return map.containsKey(o);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -93,7 +93,7 @@ public class WeakHashSet<T> extends AbstractSet<T> {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean containsAll(Collection<?> c) {
|
public boolean containsAll(Collection<?> c) {
|
||||||
return c.stream()
|
return stream()
|
||||||
.allMatch(map::containsKey);
|
.allMatch(map::containsKey);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -7,6 +7,7 @@ license = "LGPLv3"
|
||||||
modId = "flywheel"
|
modId = "flywheel"
|
||||||
version = "${file.jarVersion}"
|
version = "${file.jarVersion}"
|
||||||
displayName = "Flywheel"
|
displayName = "Flywheel"
|
||||||
|
logoFile="logo.png"
|
||||||
displayURL = "https://www.curseforge.com/minecraft/mc-mods/flywheel"
|
displayURL = "https://www.curseforge.com/minecraft/mc-mods/flywheel"
|
||||||
authors="Jozufozu"
|
authors="Jozufozu"
|
||||||
description = '''
|
description = '''
|
||||||
|
@ -23,6 +24,6 @@ side = "BOTH"
|
||||||
[[dependencies.flywheel]]
|
[[dependencies.flywheel]]
|
||||||
modId = "minecraft"
|
modId = "minecraft"
|
||||||
mandatory = true
|
mandatory = true
|
||||||
versionRange = "[1.16.5,1.17)"
|
versionRange = "[1.16.3,1.17)"
|
||||||
ordering = "NONE"
|
ordering = "NONE"
|
||||||
side = "BOTH"
|
side = "BOTH"
|
||||||
|
|
BIN
src/main/resources/logo.png
Normal file
BIN
src/main/resources/logo.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 72 KiB |
Loading…
Reference in a new issue