Minecraft NearlyDefault mod 2026 download
logo
minecraft mod NearlyDefault

NearlyDefault

Game Version: 1.13-Snapshot
Total Downloads: 52,310
Updated: Jul 20, 2018
Created: Nov 4, 2016
Download NearlyDefaultDownload Earlier Versions

Earlier Versions

Name Size Uploaded Game Version Downloads
v2.0.1 64x 1.13 release 9.08 MB Jul 20, 2018 1.13-Snapshot 3,823 download NearlyDefault v2.0.1 64x 1.13 releaseDownload
v2.0.1 128x 1.13 release 10.10 MB Jul 20, 2018 1.13-Snapshot 89 download NearlyDefault v2.0.1 128x 1.13 releaseDownload
v2.0.1 256x 1.13 release 17.01 MB Jul 20, 2018 1.13-Snapshot 79 download NearlyDefault v2.0.1 256x 1.13 releaseDownload
v2 64x 1.9-1.10 release 9.06 MB May 5, 2018 1.10.2 4,744 download NearlyDefault v2 64x 1.9-1.10 releaseDownload
v2 64x 1.6-1.8 release 9.06 MB May 5, 2018 1.8.9 1,113 download NearlyDefault v2 64x 1.6-1.8 releaseDownload
v2 128x 1.11-1.12 release 10.07 MB May 5, 2018 1.12.2 29,676 download NearlyDefault v2 128x 1.11-1.12 releaseDownload
v2 128x 1.9-1.10 release 10.07 MB May 5, 2018 1.10.2 34 download NearlyDefault v2 128x 1.9-1.10 releaseDownload
v2 128x 1.6-1.8 release 10.07 MB May 5, 2018 1.8.9 68 download NearlyDefault v2 128x 1.6-1.8 releaseDownload
v2 256x 1.11-1.12 release 16.95 MB May 5, 2018 1.12.2 211 download NearlyDefault v2 256x 1.11-1.12 releaseDownload
v2 256x 1.9-1.10 release 16.95 MB May 5, 2018 1.10.2 25 download NearlyDefault v2 256x 1.9-1.10 releaseDownload
v2 256x 1.6-1.8 release 16.95 MB May 5, 2018 1.8.9 85 download NearlyDefault v2 256x 1.6-1.8 releaseDownload
Special Edition 144x v1 release 21.53 MB Jan 12, 2018 1.12.2 1,985 download NearlyDefault Special Edition 144x v1 releaseDownload
Vanilla&Mods 256x p1 1.10.2 release 65.98 MB Aug 8, 2017 1.10.2 996 download NearlyDefault Vanilla&Mods 256x p1 1.10.2 releaseDownload
Vanilla&Mods 128x p1 1.10.2 release 34.46 MB Aug 8, 2017 1.10.2 75 download NearlyDefault Vanilla&Mods 128x p1 1.10.2 releaseDownload
Vanilla&Mods 64x p1 1.10.2 release 19.72 MB Aug 8, 2017 1.10.2 167 download NearlyDefault Vanilla&Mods 64x p1 1.10.2 releaseDownload
Vanilla&Mods 256x p1 1.7.10 release 123.59 MB Aug 8, 2017 1.8.9 1,148 download NearlyDefault Vanilla&Mods 256x p1 1.7.10 releaseDownload
Vanilla&Mods 128x p1 1.7.10 release 64.95 MB Aug 8, 2017 1.8.9 110 download NearlyDefault Vanilla&Mods 128x p1 1.7.10 releaseDownload
Vanilla&Mods 64x p1 1.7.10 release 37.47 MB Aug 8, 2017 1.8.9 271 download NearlyDefault Vanilla&Mods 64x p1 1.7.10 releaseDownload
ND NewDefault 256x (8ecbc1e9fc691af61e0f16995ef5b097).zip beta 1.22 MB Dec 28, 2017 1.12.2 449 download NearlyDefault ND NewDefault 256x (8ecbc1e9fc691af61e0f16995ef5b097).zip betaDownload
ND NewDefault 128x (8ecbc1e9fc691af61e0f16995ef5b097).zip beta 727.81 KB Dec 28, 2017 1.12.2 86 download NearlyDefault ND NewDefault 128x (8ecbc1e9fc691af61e0f16995ef5b097).zip betaDownload
ND NewDefault 64x (8ecbc1e9fc691af61e0f16995ef5b097).zip beta 474.47 KB Dec 28, 2017 1.12.2 114 download NearlyDefault ND NewDefault 64x (8ecbc1e9fc691af61e0f16995ef5b097).zip betaDownload

Screenshots

Description

Share this:

import java.awt.image.BufferedImage;
import java.io.ByteArrayInputStream;
import java.io.EOFException;
import java.io.File;
import java.io.FileInputStream;
import java.util.Arrays;

import javax.imageio.ImageIO;

public class NDP2b {

public static void main(String[] args) throws Exception {
base=new File("M:/texdev/v2/vanilla/in");
o64=new File("M:/texdev/v2/vanilla/to64");
o128=new File("M:/texdev/v2/vanilla/to128");
o256=new File("M:/texdev/v2/vanilla/to256");
read.setOut(proc);
proc.setOut(write);
read.start();proc.start();write.start();
iter(base,"");
read.fillDeath();
}

public static void iter(File dir,String sub) throws Exception {
File[] farr=dir.listFiles();
for(File f : farr){
if(f.isDirectory()) {
iter(f,sub+'/'+f.getName());
}else{
String sup=sub+'/'+f.getName();
//System.out.println(sup);
File inf=new File(base,sup);
Transo o=new Transo(sup);
byte[] ii=new byte[(int) inf.length()];
FileInputStream is=new FileInputStream(inf);
int po=0,poe;
while(po<ii.length) {
poe=is.read(ii, po, ii.length-po);
if(poe==-1) {
is.close();
throw new EOFException("Baum");
}
po+=poe;
}
is.close();
o.ii=ii;
read.put(o);
}
}
}

static Object wlok=new Object();

static Taskor read=new Taskor(1) {

@Override
public Object work(Object trans) {try {
Transo o=(Transo)trans;
//System.out.println(o.sup);
o.bimg=ImageIO.read(new ByteArrayInputStream(o.ii));
return o;
}catch(Exception ex) {ex.printStackTrace();return null;}}

};

static Taskor write=new Taskor(1) {

@Override
public Object work(Object trans) {try {
WTr o=(WTr)trans;
ImageIO.write(o.out, "png", o.o);
return null;
}catch(Exception ex) {ex.printStackTrace();return null;}}

};

static class WTr {
File o;BufferedImage out;
public WTr(File a,BufferedImage b) {o=a;out=b;}
}

static Taskor proc=new Taskor(0) {

@Override
public Object work(Object trans) {try {
Transo o=(Transo)trans;
System.out.println(getName()+" "+o.sup);
boolean ipar=o.sup.contains("items/");
deo(o.bimg,ipar,new File(o64,o.sup),4,3,0);
deo(o.bimg,ipar,new File(o128,o.sup),8,5,1);
deo(o.bimg,ipar,new File(o256,o.sup),16,9,2);
return null;
}catch(Exception ex) {ex.printStackTrace();return null;}}

public void deo(BufferedImage bimg, boolean ipar, File o, int scal, int cust, int obid) throws Exception {
o.getParentFile().mkdirs();
BufferedImage out=ipar?parse(bimg,scal,cust,obid):parsenb(bimg,scal,cust,obid);
write.put(new WTr(o,out));
}

int[][] oR=new int[3][],oG=new int[3][],oB=new int[3][],oA=new int[3][];

/**
* generate median-upscaled image
* @param in ARGB-array
* @param outbuf @Nullable pass a array for output. Can be null. PLEASE USE RETURNED ARRAY AS OUTPUT
* @param iw in width
* @param ih in height
* @param scal scale factor
* @param cust median factor
* @return output array
*/
public byte[] parse(byte[] in, byte[] out, int iw, int ih, int scal, int cust, int obid) {
assert(in.length==(iw*ih*4));
int[] R=oR[obid],G=oG[obid],B=oB[obid],A=oA[obid];
int oh=ih*scal,ow=iw*scal,ymow,ydscalmiw,oxy,ixy;
if(out==null||out.length!=ow*oh*4) {out=new byte[ow*oh*4];}
for(int y=0;y<oh;y++) {
ymow=y*ow;
ydscalmiw=(y/scal)*iw;
for(int x=0;x<ow;x++) {
oxy=(ymow+x)*4;
ixy=(ydscalmiw+(x/scal))*4;
out[oxy]=in[ixy];out[oxy+1]=in[ixy+1];out[oxy+2]=in[ixy+2];out[oxy+3]=in[ixy+3];
}
}
int custq=cust*cust;
int wb=((cust-1)/2);
int wd=((custq-1)/2);
int m=0,dpx=0,dpy=0,pps;
if(A==null||A.length!=custq) {
//opixel[obid]=pixel=new int[custq];
oR[obid]=R=new int[custq];
oG[obid]=G=new int[custq];
oB[obid]=B=new int[custq];
oA[obid]=A=new int[custq];
}
for(int i=wb;i<ow-wb;i++){
for(int j=wb;j<oh-wb;j++){
//int ma=(img.getRGB(i, j) >> 24) & 0xff;
m=0;
pps=((j*ow)+i)*4;
for(int k=-wb;k<=wb;k++){
dpy=(k+j)*ow;
for(int l=-wb;l<=wb;l++){
//pixel[m]=img.getRGB(i+k, j+l);
dpx=(dpy+i+l)*4;
A[m]=out[dpx]&0xFF;
R[m]=out[dpx+1]&0xFF;
G[m]=out[dpx+2]&0xFF;
B[m]=out[dpx+3]&0xFF;
m++;
}
}
/*for(int k=0;k<pixel.length;k++){
R[k]=(pixel[k] >> 16) & 0xFF;
G[k]=(pixel[k] >> 8) & 0xFF;
B[k]=(pixel[k] >> 0) & 0xFF;
A[k]=(pixel[k] >> 24) & 0xff;
}*/
Arrays.sort(R);
Arrays.sort(G);
Arrays.sort(B);
Arrays.sort(A);
/*img.setRGB(i,j, ((A[wd] & 0xFF) << 24) |
((R[wd] & 0xFF) << 16) |
((G[wd] & 0xFF) << 8) |
((B[wd] & 0xFF) << 0));*/
out[pps]=(byte) A[wd];
out[pps+1]=(byte) R[wd];
out[pps+2]=(byte) G[wd];
out[pps+3]=(byte) B[wd];
}
}
return out;
}

byte[][] ozwbuf=new byte[3][],ozwobuf=new byte[3][];

BufferedImage[] bei=new BufferedImage[3];

/*public void etchCol(byte[] zwbuf, int w, int sx, int sy, int dx, int dy) {
int sp=((sy*w)+sx)*4,dp=((dy*w)+dx)*4;
zwbuf[dp]=zwbuf[sp];
zwbuf[dp+1]=zwbuf[sp+1];
zwbuf[dp+2]=zwbuf[sp+2];
zwbuf[dp+3]=zwbuf[sp+3];
}*/

public void etchCol(byte[] zwbuf, int w, byte a, byte r, byte g, byte b, int dx, int dy) {
int dp=((dy*w)+dx)*4;
zwbuf[dp]=a;
zwbuf[dp+1]=r;
zwbuf[dp+2]=g;
zwbuf[dp+3]=b;
}

byte[] sA=new byte[8192];
byte[] sR=new byte[8192];
byte[] sG=new byte[8192];
byte[] sB=new byte[8192];
byte[][] odA=new byte[3][];
byte[][] odR=new byte[3][];
byte[][] odG=new byte[3][];
byte[][] odB=new byte[3][];

public BufferedImage parsenb(BufferedImage in, int scal, int cust, int obid) {
int iw=in.getWidth(),ih=in.getHeight();
//int iwp1=iw+1,ihp1=ih+1,iwp2=iwp1+1,ihp2=ihp1+1;
int zwbufs=iw*ih*4;
byte[] zwbuf=ozwbuf[obid];byte[] zwobuf=ozwobuf[obid];
if(zwbuf==null||zwbuf.length!=zwbufs) {ozwobuf[obid]=zwbuf=new byte[zwbufs];}
int scany,pipo,cc;
for(int y=0;y<ih;y++) {
scany=y*iw;
for(int x=0;x<iw;x++) {
pipo=(scany+x)*4;
cc=in.getRGB(x, y);
zwbuf[pipo]=(byte) (cc >> 24);
zwbuf[pipo+1]=(byte) (cc >> 16);
zwbuf[pipo+2]=(byte) (cc >> 8);
zwbuf[pipo+3]=(byte) cc;
}
}
/*for(int y=0;y<ihp2;y++) {
scany=y*iwp2;
for(int x=0;x<iwp2;x++) {
pipo=(scany+x)*4;
if(y==0||y==ihp1||x==0||x==iwp1) {
zwbuf[pipo]=(byte) (dca/ccc);
zwbuf[pipo+1]=(byte) (dcr/ccc);
zwbuf[pipo+2]=(byte) (dcg/ccc);
zwbuf[pipo+3]=(byte) (dcb/ccc);
}
if(x<=1) {
if(y<=1&&(x==0||y==0)) {
zwbuf[pipo]=zwbuf[0];
zwbuf[pipo+1]=zwbuf[1];
zwbuf[pipo+2]=zwbuf[2];
zwbuf[pipo+3]=zwbuf[3];
} else if(y>=ihp1-1&&(x==0||y==ihp1)) {
zwbuf[pipo]=zwbuf[zwbuf.length-(iwp2*4)];
zwbuf[pipo+1]=zwbuf[zwbuf.length-(iwp2*4)+1];
zwbuf[pipo+2]=zwbuf[zwbuf.length-(iwp2*4)+2];
zwbuf[pipo+3]=zwbuf[zwbuf.length-(iwp2*4)+3];
}
} else if(x>=iwp1-1) {
if(y<=1&&(x==iwp1||y==0)) {
zwbuf[pipo]=zwbuf[(iwp2*4)];
zwbuf[pipo+1]=zwbuf[(iwp2*4)+1];
zwbuf[pipo+2]=zwbuf[(iwp2*4)+2];
zwbuf[pipo+3]=zwbuf[(iwp2*4)+3];
} else if(y>=ihp1-1&&(x==iwp1||y==ihp1)) {
zwbuf[pipo]=zwbuf[zwbuf.length-4];
zwbuf[pipo+1]=zwbuf[zwbuf.length-3];
zwbuf[pipo+2]=zwbuf[zwbuf.length-2];
zwbuf[pipo+3]=zwbuf[zwbuf.length-1];
}
}
}
}*/
zwobuf=parse(zwbuf,zwobuf,iw,ih,scal,cust,obid);
int ow=iw*scal,oh=ih*scal;//,owp1=iwp1*scal,ohp1=ihp1*scal,owp2=iwp2*scal;
BufferedImage o=bei[obid];
if(o==null||o.getWidth()!=ow||o.getHeight()!=oh) {
o=bei[obid]=new BufferedImage(ow,oh,BufferedImage.TYPE_INT_ARGB);
}
int minsc,pen;
for(int y=0;y<oh;y++) {
scany=y*ow;
minsc=((y/scal)*iw);
for(int x=0;x<ow;x++) {
pipo=(scany+x)*4;
if(sssse[scal][y%scal][x%scal]) {
pen=(minsc+(x/scal))*4;
zwobuf[pipo]=zwbuf[pen];
zwobuf[pipo+1]=zwbuf[pen+1];
zwobuf[pipo+2]=zwbuf[pen+2];
zwobuf[pipo+3]=zwbuf[pen+3];
}
o.setRGB(x, y, ((zwobuf[pipo] & 0xFF) << 24) |
((zwobuf[pipo+1] & 0xFF) << 16) |
((zwobuf[pipo+2] & 0xFF) << 8) |
(zwobuf[pipo+3] & 0xFF));
}
}
return o;
}

public BufferedImage parse(BufferedImage in, int scal, int cust, int obid) {
int iw=in.getWidth(),ih=in.getHeight();
int iwp1=iw+1,ihp1=ih+1,iwp2=iwp1+1,ihp2=ihp1+1;
int zwbufs=iwp2*ihp2*4;
byte[] zwbuf=ozwbuf[obid];byte[] zwobuf=ozwobuf[obid];
if(zwbuf==null||zwbuf.length!=zwbufs) {ozwobuf[obid]=zwbuf=new byte[zwbufs];}
int scany,pipo,cc;
int ccc=0,ym1;

for(int y=1;y<ihp1;y++) {
scany=y*iwp2;ym1=y-1;
for(int x=1;x<iwp1;x++) {
pipo=(scany+x)*4;
cc=in.getRGB(x-1, ym1);
zwbuf[pipo]=(byte) (cc >> 24);
zwbuf[pipo+1]=(byte) (cc >> 16);
zwbuf[pipo+2]=(byte) (cc >> 8);
zwbuf[pipo+3]=(byte) cc;
if(y==1||y==ih||x==1||x==iw) {
sA[ccc]=zwbuf[pipo];
sR[ccc]=zwbuf[pipo+1];
sG[ccc]=zwbuf[pipo+2];
sB[ccc]=zwbuf[pipo+3];
ccc++;
}
}
}
byte[] dA=odA[obid];if(dA==null||dA.length!=ccc) {odA[obid]=dA=new byte[ccc];}
System.arraycopy(sA, 0, dA, 0, ccc);Arrays.sort(dA);
byte[] dR=odR[obid];if(dR==null||dR.length!=ccc) {odR[obid]=dR=new byte[ccc];}
System.arraycopy(sR, 0, dR, 0, ccc);Arrays.sort(dR);
byte[] dG=odG[obid];if(dG==null||dG.length!=ccc) {odG[obid]=dG=new byte[ccc];}
System.arraycopy(sG, 0, dG, 0, ccc);Arrays.sort(dG);
byte[] dB=odB[obid];if(dB==null||dB.length!=ccc) {odB[obid]=dB=new byte[ccc];}
System.arraycopy(sB, 0, dB, 0, ccc);Arrays.sort(dB);
/*for(int y=0;y<ihp2;y++) {
scany=y*iwp2;
for(int x=0;x<iwp2;x++) {
pipo=(scany+x)*4;
if(y==0||y==ihp1||x==0||x==iwp1) {
zwbuf[pipo]=(byte) (dca/ccc);
zwbuf[pipo+1]=(byte) (dcr/ccc);
zwbuf[pipo+2]=(byte) (dcg/ccc);
zwbuf[pipo+3]=(byte) (dcb/ccc);
}
if(x<=1) {
if(y<=1&&(x==0||y==0)) {
zwbuf[pipo]=zwbuf[0];
zwbuf[pipo+1]=zwbuf[1];
zwbuf[pipo+2]=zwbuf[2];
zwbuf[pipo+3]=zwbuf[3];
} else if(y>=ihp1-1&&(x==0||y==ihp1)) {
zwbuf[pipo]=zwbuf[zwbuf.length-(iwp2*4)];
zwbuf[pipo+1]=zwbuf[zwbuf.length-(iwp2*4)+1];
zwbuf[pipo+2]=zwbuf[zwbuf.length-(iwp2*4)+2];
zwbuf[pipo+3]=zwbuf[zwbuf.length-(iwp2*4)+3];
}
} else if(x>=iwp1-1) {
if(y<=1&&(x==iwp1||y==0)) {
zwbuf[pipo]=zwbuf[(iwp2*4)];
zwbuf[pipo+1]=zwbuf[(iwp2*4)+1];
zwbuf[pipo+2]=zwbuf[(iwp2*4)+2];
zwbuf[pipo+3]=zwbuf[(iwp2*4)+3];
} else if(y>=ihp1-1&&(x==iwp1||y==ihp1)) {
zwbuf[pipo]=zwbuf[zwbuf.length-4];
zwbuf[pipo+1]=zwbuf[zwbuf.length-3];
zwbuf[pipo+2]=zwbuf[zwbuf.length-2];
zwbuf[pipo+3]=zwbuf[zwbuf.length-1];
}
}
}
}*/
byte dcca=dA[ccc/2],dccr=dR[ccc/2],dccg=dG[ccc/2],dccb=dB[ccc/2];
for(int x=0;x<iwp2;x++) {
etchCol(zwbuf,iwp2,dcca,dccr,dccg,dccb,x,0);
etchCol(zwbuf,iwp2,dcca,dccr,dccg,dccb,x,ihp1);
}
for(int y=0;y<ihp2;y++) {
etchCol(zwbuf,iwp2,dcca,dccr,dccg,dccb,0,y);
etchCol(zwbuf,iwp2,dcca,dccr,dccg,dccb,iwp1,y);
}
zwobuf=parse(zwbuf,zwobuf,iwp2,ihp2,scal,cust,obid);
int ow=iw*scal,oh=ih*scal,owp1=iwp1*scal,ohp1=ihp1*scal,owp2=iwp2*scal;
BufferedImage o=bei[obid];
if(o==null||o.getWidth()!=ow||o.getHeight()!=oh) {
o=bei[obid]=new BufferedImage(ow,oh,BufferedImage.TYPE_INT_ARGB);
}
int minsc,pen;
for(int y=scal;y<ohp1;y++) {
scany=y*owp2;ym1=y-scal;
minsc=((y/scal)*iwp2);
for(int x=scal;x<owp1;x++) {
pipo=(scany+x)*4;
if(sssse[scal][y%scal][x%scal]) {
pen=(minsc+(x/scal))*4;
zwobuf[pipo]=zwbuf[pen];
zwobuf[pipo+1]=zwbuf[pen+1];
zwobuf[pipo+2]=zwbuf[pen+2];
zwobuf[pipo+3]=zwbuf[pen+3];
}
o.setRGB(x-scal, ym1, ((zwobuf[pipo] & 0xFF) << 24) |
((zwobuf[pipo+1] & 0xFF) << 16) |
((zwobuf[pipo+2] & 0xFF) << 8) |
(zwobuf[pipo+3] & 0xFF));
}
}
return o;
}
};

static class Transo {
String sup;BufferedImage bimg;byte[] ii;
public Transo(String a) {sup=a;}
}

public static boolean beh=false;

public static File base,o64,o128,o256;

static boolean[][][] sssse= new boolean[][][]{null,null,{{true,true},{true,true}},null,
{{false,true,true,false},
{true,true,true,true},
{true,true,true,true},
{false,true,true,false}},null,null,null,
{{false,false,true,true,true,true,false,false},
{false,true,true,true,true,true,true,false},
{true,true,true,true,true,true,true,true},
{true,true,true,true,true,true,true,true},
{true,true,true,true,true,true,true,true},
{true,true,true,true,true,true,true,true},
{false,true,true,true,true,true,true,false},
{false,false,true,true,true,true,false,false},},null,null,null,null,null,null,null,
{{false,false,false,false,false,true,true,true,true,true,true,false,false,false,false,false},
{false,false,false,true,true,true,true,true,true,true,true,true,true,false,false,false},
{false,false,true,true,true,true,true,true,true,true,true,true,true,true,false,false},
{false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false},
{false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false},
{true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true},
{true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true},
{true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true},
{true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true},
{true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true},
{true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true},
{false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false},
{false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false},
{false,false,true,true,true,true,true,true,true,true,true,true,true,true,false,false},
{false,false,false,true,true,true,true,true,true,true,true,true,true,false,false,false},
{false,false,false,false,false,true,true,true,true,true,true,false,false,false,false,false}}
};
}

Less Edgy Default Textures

 

Downloads under "Files"

 

Algorithm Implementation

 

Comments

Add a comment